打码挂机网站建设百度做广告多少钱
无重复字符的最长子串
给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串的长度。
输入:字符串
输出:整型变量
思路:两个指针一前一后,最开始都在0位置,然后有值则快指针向右移动一位,判断是否存在过
class Solution {public int lengthOfLongestSubstring(String s) {int n = s.length(), ans = 0;Map<Character, Integer> map = new HashMap<>();for (int end = 0, start = 0; end < n; end++) {char alpha = s.charAt(end);if (map.containsKey(alpha)) {start = Math.max(map.get(alpha), start);}ans = Math.max(ans, end - start + 1);map.put(s.charAt(end), end + 1);}return ans;}
}