给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/longest-substring-without-repeating-characters
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
import java.util.Arrays; class Solution { public int lengthOfLongestSubstring(String s) { if (s == null || s.length() == 0) { return 0; } int[] hash = new int[256]; Arrays.fill(hash, -1); int pre = 0; int ret = 0; for (int i = 0; i < s.length(); ++i) { pre = Math.min(pre + 1, i - hash[s.charAt(i)]); ret = Math.max(ret, pre); hash[s.charAt(i)] = i; } return ret; } }