Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0 Star 0 Fork 0

徐云天/leetcode

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
_38.java 1.75 KB
一键复制 编辑 原始数据 按行查看 历史
徐云天 提交于 2021-06-27 10:31 +08:00 . 增加38
public class _38 {
static class Solution1{
public String countAndSay(int n) {
if(n == 1) return "1";
char pre = '0';
int count = 0;
char[] arr = countAndSay(n-1).toCharArray();
char[] newArr = new char[arr.length*2];
int idx = 0;
for(char ch : arr){
if(pre != '0' && ch != pre){
newArr[idx++] = (char)((int)'0' + (int) count);
newArr[idx++] = pre;
count = 0;
}
count++;
pre = ch;
}
if(count !=0){
newArr[idx++] = (char)((int)'0' + (int) count);
newArr[idx++] = pre;
}
return new String(newArr,0,idx);
}
}
static class Solution2{
public String countAndSay(int n) {
if(n == 1) return "1";
String res = "1";
for(int i = 2;i <= n;i++){
char pre = '0';
int count = 0;
char[] arr = res.toCharArray();
char[] newArr = new char[arr.length*2];
int idx = 0;
for(char ch : arr){
if(pre != '0' && ch != pre){
newArr[idx++] = (char)((int)'0' + (int) count);
newArr[idx++] = pre;
count = 0;
}
count++;
pre = ch;
}
if(count !=0){
newArr[idx++] = (char)((int)'0' + (int) count);
newArr[idx++] = pre;
}
res = new String(newArr,0,idx);
}
return res;
}
}
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Java
1
https://gitee.com/xuyuntian/leetcode.git
git@gitee.com:xuyuntian/leetcode.git
xuyuntian
leetcode
leetcode
master