思路
每次对字符串进行遍历即可,用一个Integer统计相邻的相同字符个数,如果当前字符与后面邻接的字符相同,num++;如果不同,则将""+num+s.charAt(j)拼接到字符串中
解题过程
当n==1时,可以直接返回,不为1的话则照上面的方法循环n-1次
Code
class Solution {
public String countAndSay(int n) {
String s="1";
if(n==1) return s;
for(int i=1;i<n;i++){
String t="";
int num=1;
for(int j=0;j<s.length();j++){
if((j+1)<s.length()&&s.charAt(j)==s.charAt(j+1)){
num++;
}else{
t+=""+num+s.charAt(j);
num=1;
}
}
s=t;
}
return s;
}
}
作者:菜卷
链接:https://leetcode.cn/problems/count-and-say/solutions/2931445/wai-guan-shu-lie-by-ashi-jian-chong-dan-jfetx/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。