首页 > 其他 > 详细

3. Longest Substring Without Repeating Characters

时间:2016-01-29 21:03:07      阅读:95      评论:0      收藏:0      [点我收藏+]

计算一个字符串的最长不重复字符串长度

例如abcdcfdgq

截取的是cfdgq 长度为5

 1     public int lengthOfLongestSubstring(String s) {
 2         if(s == null || s.length() == 0){
 3             return 0;
 4         }
 5         int max = 0;
 6         //j是左边界,i是右边界
 7         int j = 0;
 8         Map<Character,Integer> map = new HashMap<Character,Integer>();
 9         for(int i = 0;i < s.length(); i++){
10             if(map.get(s.charAt(i)) != null){
11                 //如果有重复字符,移动j的位置
12                 j = Math.max(j,map.get(s.charAt(i))+1);
13             }
14             //更新map表
15             map.put(s.charAt(i),i);
16             //更新max值
17             max = Math.max(max,i-j+1);
18         }
19         return max;
20     }

 

3. Longest Substring Without Repeating Characters

原文:http://www.cnblogs.com/imyanzu/p/5169798.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!