问题
给定一个字符串 s ,请你找出其中不含有重复字符的 最长 的长度。
思路
暴力求解+滑动窗口
代码
class Solution {public int lengthOfLongestSubstring(String s) {if(s.length() == 0){return 0;}int res = 0;Deque<Character> deque = new LinkedList<>();Set<Character> set = new HashSet<>();for(int i = 0; i < s.length();i++){char c = s.charAt(i);if(!set.contains(c)){set.add(c);deque.addFirst(c);}else{while(!deque.isEmpty()){char t = deque.getLast();deque.removeLast();set.remove(t);if(c == t){break;}}deque.addFirst(c);set.add(c);}int len = deque.size();res = len > res ? len:res;}return res;} }