Leetcode 3 : Longest Substring Without Repeating Characters
来源:互联网 发布:个人自动发卡平台源码 编辑:程序博客网 时间:2024/05/26 08:42
Given a string, find the length of the longest substring without repeating characters. For example, the longest substring without repeating letters for "abcabcbb" is "abc", which the length is 3. For "bbbbb" the longest substring is "b", with the length of 1.
思路:我们需要解决的是,遇到出现重复的字符,如何处理的问题。这道题由于只有字符,因此用一个256的int数组来模拟哈希表,key存放字符,value存放索引,再用一个pointer记录字符串的起始位置left,当value大于left的key是无效的,代码如下:
public static int lengthOfLongestSubstring(String s) { int[] alphabet = new int[256]; int left = 0, maxLen = 0; for(int i = 0; i < alphabet.length; i++) alphabet[i] = -1; for(int i = 0; i < s.length(); i++){ System.out.println(s.charAt(i) + " " + alphabet[s.charAt(i)]); if(alphabet[s.charAt(i)] != -1 && alphabet[s.charAt(i)] >= left){ maxLen = (i - left) > maxLen ? (i - left) : maxLen; left = alphabet[s.charAt(i)] + 1; } alphabet[s.charAt(i)] = i; } return (s.length() - left) > maxLen ? (s.length() - left) : maxLen; }
0 0
- LeetCode 3 - Longest Substring Without Repeating Characters
- LeetCode 3: Longest Substring Without Repeating Characters
- leetcode-3:Longest Substring Without Repeating Characters
- LeetCode(3) Longest Substring Without Repeating Characters
- leetcode 3LONGEST SUBSTRING WITHOUT REPEATING CHARACTERS
- Leetcode【3】:Longest Substring Without Repeating Characters
- [leetcode 3] Longest Substring Without Repeating Characters
- [Leetcode] 3 - Longest Substring Without Repeating Characters
- LeetCode 3:《Longest Substring Without Repeating Characters》
- [leetcode 3] Longest Substring Without Repeating Characters
- [leetcode] 3 Longest Substring Without Repeating Characters
- [Leetcode]3Longest Substring Without Repeating Characters
- leetcode 3 Longest Substring Without Repeating Characters
- LeetCode #3 Longest Substring Without Repeating Characters
- leetcode-3 Longest Substring Without Repeating Characters
- LeetCode 3 Longest Substring Without Repeating Characters
- leetcode 3: Longest Substring Without Repeating Characters
- LeetCode 3 Longest Substring Without Repeating Characters
- 敏捷开发真正的重点不是 User Story 的拆分, 而是开发人员的能力
- 11.7 Matlab 访问文件
- 运行tomcat7w.exe,提示:指定的服务未安装unable to open the service tomcat7
- HDU1175 连连看(DFS)
- native2ascii命令一点心得
- Leetcode 3 : Longest Substring Without Repeating Characters
- U盘安装CentOS 7提示 “Warning: /dev/root does not exist, could not boot” 解决办法
- Oracle主要学习资源绝对干货-DBA之路
- android安卓智能穿戴&仿苹果手表界面的源码效果
- 一句话
- 递归查找子窗口
- 面试题:描述一下C程序的编译过程
- AndroidStudio导入LeanCloudjar包编译出错及解决方法
- 10分钟掌握Linux vi编辑器常见命令的使用,最简单的vi编辑器教程