394. Decode String**
来源:互联网 发布:js图片跨域上传 编辑:程序博客网 时间:2024/05/22 03:37
Given an encoded string, return it's decoded string.
The encoding rule is: k[encoded_string]
, where the encoded_stringinside the square brackets is being repeated exactly k times. Note thatk is guaranteed to be a positive integer.
You may assume that the input string is always valid; No extra white spaces, square brackets are well-formed, etc.
Furthermore, you may assume that the original data does not contain any digits and that digits are only for those repeat numbers, k. For example, there won't be input like 3a
or 2[4]
.
Examples:
s = "3[a]2[bc]", return "aaabcbc".s = "3[a2[c]]", return "accaccacc".s = "2[abc]3[cd]ef", return "abcabccdcdcdef".
public class Solution { public String decodeString(String s) { Stack<Integer> count = new Stack<>(); Stack<String> result = new Stack<>(); int i=0; result.push(""); while(i<s.length()){ char ch = s.charAt(i); if(ch>='0'&&ch<='9'){ int start=i; while(s.charAt(i+1)>='0'&&s.charAt(i+1)<='9') i++; count.push(Integer.parseInt(s.substring(start,i+1))); } else if(ch=='['){ result.push(""); }else if(ch==']'){ int times = count.pop(); String str = result.pop(); StringBuilder sb = new StringBuilder(); for(int j=0;j<times;j++){ sb.append(str); } result.push(result.pop()+sb.toString()); }else{ result.push(result.pop()+ch); } i++; } return result.pop(); }}
0 0
- 【Leetcode】394. Decode String
- 394. Decode String
- 394. Decode String
- 394. Decode String
- 【leetcode】394. Decode String
- 394. Decode String
- leetcode ----394. Decode String
- 394. Decode String
- 394. Decode String
- 394. Decode String
- 394. Decode String
- [leetcode] 394. Decode String
- [Leetcode]394. Decode String
- 394. Decode String
- 【LeetCode】 394. Decode String
- 394. Decode String
- LeetCode 394. Decode String
- Leetcode 394. Decode String
- 【算法整理】听说你写的算法很牛?-优质算法衡量标准探讨
- [BZOJ3158]千钧一发(最小割)
- 谷哥的小弟学后台(04)——MySQL(4)
- Windows 编程基础
- 一起学 Java(四) File、Try 、序列化、MySQL、Socke
- 394. Decode String**
- POJ 1001 求高精度幂 中文
- 第一次移植出现的问题小结
- [Jenkins]Jenkins入门资料
- 1081. Rational Sum (20)
- Windows 窗体的高级功能
- 不要怂,就是GAN (生成式对抗网络) (四):训练和测试 GAN
- BZOJ1095: [ZJOI2007]Hide 捉迷藏
- POJ 1002 487-3279 中文