美文网首页LeetCode刷题笔记JAVA语言
38. Count and Say(自己第一次写递归)

38. Count and Say(自己第一次写递归)

作者: cixing | 来源:发表于2018-05-03 15:05 被阅读0次

    第一次自己写递归方法

    先确定好结束的条件,再写具体实现某一项的内容,第一次写递归就accept了很激动。

    class Solution {
        public String countAndSay(int n) {
            if(n == 1)
                return "1";
            String a = countAndSay(n-1);
            String b = "";
            int len = a.length();
            int i = 0;
            int j = 1;
            while(i<len) {
                while(j<len&&a.charAt(i)==a.charAt(j)) {
                    j++;
                }
                b = b +(j-i);
                b = b +a.charAt(i);
                i = j;
                j = j+1;
            }
            return b;
        }
    }
    

    用stringbuffer会减少很多运行时间

    相关文章

      网友评论

        本文标题:38. Count and Say(自己第一次写递归)

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