题目:给定一个字符串, 找到其中没有重复字符的最长子串。
例如:string = "abcabcbb" 应返回结果“abc”,长度是3。
C++程序(https://discuss.leetcode.com/topic/24739/c-code-in-9-lines)如下:
int lengthOfLongestSubstring(string s) {
vector<int> dict(256, -1);
int maxLen = 0, start = -1;
for (int i = 0; i != s.length(); i++) {
if (dict[s[i]] > start)
start = dict[s[i]];
dict[s[i]] = i;
maxLen = max(maxLen, i - start);
}
return maxLen;
}
本文介绍了一种求解字符串中无重复字符最长子串的高效算法,并提供了一个简洁的C++实现示例。该算法利用哈希表记录字符位置,通过一次遍历找出最大长度。
685

被折叠的 条评论
为什么被折叠?



