[DFS]LeetCode394. Decode String


DFS思想解决,利用]分割,传递i值比较巧妙得判断了每个重复字符串的结束位置。

class Solution {
public:
    
    string decodeString(string s, int &i) {
        string result = "";
        string strone;
        
        while(i < s.length() && s[i] != ']') {
            if(s[i] < '0' || s[i] > '9')
                result += s[i++];
            else{
                int num = 0;
                while(s[i] != '[')
                    num = num * 10 + (s[i++] - '0');
                strone = decodeString(s, ++i);
                i++;

                while(num--)
                    result += strone;
            }
        }
        
        return result;
    }
    
    string decodeString(string s) {
        int i = 0;
        return decodeString(s, i);
    }
};
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 背景 一年多以前我在知乎上答了有关LeetCode的问题, 分享了一些自己做题目的经验。 张土汪:刷leetcod...
    土汪阅读 14,354评论 0 33
  • 《ilua》速成开发手册3.0 官方用户交流:iApp开发交流(1) 239547050iApp开发交流(2) 1...
    叶染柒丶阅读 13,805评论 0 11
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 32,453评论 18 399
  • 指针这玩意儿简直荒谬至极 一圈又一圈,迅速,沉着,无情 我盯着他的身躯碾过一片又一片的荒漠 他以自己的执着去描述世...
    忘朔梦阅读 2,635评论 0 2
  • 她难过了总是想喝酒 醉了就不会舍不得你走 就不会想起你已经走了 但每次喝完那杯烈酒 她就更想你了 后来...
    她喜欢满天星阅读 2,425评论 0 0

友情链接更多精彩内容