面试:哈希:最长不同字符子串
来源:互联网 发布:哪些属于淘宝禁售商品 编辑:程序博客网 时间:2024/06/06 14:44
题目
输入一个字符串,求不含有重复字母的最长子串的长度
“aaaa” a 长度1
算法
- hash记录字母和该字母出现的次数
- 记录字母出现的位置
import java.util.*;class Solution{ public int lengthOfLongestSubstring(String s){ int n=s.length(), start=0, maxlen=0; //hash记录字符最新出现的位置 HashMap<Character,Integer> hm=new HashMap<Character,Integer>(); for(int i=0;i<n;i++){ char c=s.charAt(i); if(hm.containsKey(c) && hm.get(c) >=start){ //更新出现的位置 start=hm.get(c)+1; } hm.put(c, i); maxlen=Math.max(maxlen, i-start+1); } return maxlen; }}
0 0
- 面试:哈希:最长不同字符子串
- 面试:哈希:最长不同字符
- K个不同字符的最长子串
- 面试:哈希:最长连续子串
- 最长对称字符子串
- 【程序猿笔试面试解题指南】求字符串中不含重复字符的最长子串
- [Google] 字符串中求最长的子串,该子串最多只含有2个不同的字符
- [Google] 字符串的最长子串,该子串的每个字符都不同 要求O(n)
- 最长回文子串的不同解法
- 最长无重复字符的子串
- 没有重复字符的最长子串
- 最长公共字符子串C++实现
- 最长无重复字符子串
- 最长无重复字符子串
- 最长无重复字符子串
- 最长连续三字符子串问题
- 最长无重复字符的子串
- 最长无重复字符子串练习题
- 手机开发实战130——DM介绍1
- 【编程素养】之代码规范(零)
- C++中常用的STL 函数
- SpringBoot日志管理
- 手机开发实战131——DM介绍2
- 面试:哈希:最长不同字符子串
- Codevs 2547 东方辉针城
- 九九乘法表
- SCPPO(三):禅道的使用—项目管理员、开发等人员
- 互联网中的视频/音频服务
- Java NIO 浅析I/O模型
- 多云 25℃ 6.10日
- GUI_POINT的坐标
- mysql带 OR 的多条件查询