本文主要是介绍LeetCode #3. Longest Substring Without Repeating Characters,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题意: 计算一个字符串的中的最长的不含有重复字母的长度
解法: 尺取法的裸题了,维护2个指针l,r, 不断移动r指针,同时检查[l,r]是不是存在重复的了,如果存在就移动l指针了
class Solution {
public:int lengthOfLongestSubstring(string s) {int n = s.size();int l=0, r=0;set<char> S;int ans=0;while(true){while(r<n){if(S.count(s[r]))break;S.insert(s[r++]);}ans = max(ans, r-l);if(r>=n)break;S.erase(s[l++]);}return ans;}
};
这篇关于LeetCode #3. Longest Substring Without Repeating Characters的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!