LeetCode—394. Decode String
来源:互联网 发布:sql设置默认值 编辑:程序博客网 时间:2024/04/28 00:15
Decode String思路:先遍历String,找到少于k的字母,然后以这些字母split字符串,再将字符串递归调用方法。
GitHub地址:https://github.com/corpsepiges/leetcode
点此进入如果可以的话,请点一下star,谢谢。
public class Solution { public int longestSubstring(String s, int k) { char[] cs=s.toCharArray(); Map<Character, Integer> map=new HashMap<Character, Integer>(); for (Character c:cs) { map.put(c, map.get(c)==null?1:map.get(c)+1); } Set<Character> cSet=new HashSet<>(); for (Character c:map.keySet()) { if (map.get(c)<k) { cSet.add(c); } } if (cSet.size()==0) { return s.length(); } Set<String> set=new HashSet<String>(); Set<String> newSet=new HashSet<String>(); set.add(s); for (Character c:cSet) { for (String test:set) { String[] strs=test.split(String.valueOf(c)); for (String str:strs) { if (str.length()>0) { newSet.add(str); } } } set.clear(); set.addAll(newSet); newSet.clear(); } int ans=0; for (String test:set) { int maxTest=longestSubstring(test,k); if (maxTest>ans) { ans=maxTest; } } return ans; }}
0 0
- LeetCode—394. Decode String
- LeetCode—394. Decode String
- 【Leetcode】394. Decode String
- 【leetcode】394. Decode String
- leetcode ----394. Decode String
- [leetcode] 394. Decode String
- [Leetcode]394. Decode String
- 【LeetCode】 394. Decode String
- LeetCode 394. Decode String
- Leetcode 394. Decode String
- [leetcode]394. Decode String
- LeetCode 394. Decode String
- Leetcode-394. Decode String
- LeetCode 394. Decode String
- Leetcode 394. Decode String
- [LeetCode] 394. Decode String
- leetcode 394. Decode String
- LeetCode 394. Decode String
- ubuntu 16.04 + GTX 1080 DeepLearning工作站搭建
- mysql进阶学习笔记
- 多线程wait 跟sleep区别
- 有哪些简单的方法可以将Excel转换成PDF
- 解决安装arm-linux-gcc提示未找到安装目录或文件
- LeetCode—394. Decode String
- 面向对象设计原则概述
- Violate的应用和作用
- 通过发热量、辐射、风扇噪声等入侵物理隔离网络案例
- Mybatis逆向工程
- Android所有属性大全
- 第五章 二叉树 练习题(数据结构与算法MOOC)
- 王烁的极简投资法总结
- 小米手机无法接听电话的解决方案