美文网首页
leetcode 38--计算数量(找规律)

leetcode 38--计算数量(找规律)

作者: Ariana不会哭 | 来源:发表于2018-12-14 02:49 被阅读0次

    这个题目相对简单,但是理解上需要仔细一点:


    图片.png

    简单来说题目让我们找规律,没有什么更好的方法,就是从头到n 依次计算,第一层循环是行数循环,为了减少一个统计行数的变量 我直接这样写:--n>0:首先n减一 然后判断是否大于零。
    后面就是按行分配循环 然后计算出相同的char有几个:

    class Solution {
        //my
        public String countAndSay2(int n) {
            if (n <= 0) 
                return "";
            String ans="1";
            while(--n>0){
                String cur="";
                for(int i=0;i<ans.length();i++){
                    Integer cnt=1;
                    while(i+1<ans.length()&& ans.charAt(i+1)==ans.charAt(i)){
                        cnt++;
                        i++;
                    }
                    cur+=cnt.toString()+ans.charAt(i); 
                }
                ans=cur;
            }
            return ans;
        }
    }
    

    相关文章

      网友评论

          本文标题:leetcode 38--计算数量(找规律)

          本文链接:https://www.haomeiwen.com/subject/dezihqtx.html