LeetCode3. Longest Substring Without Repeating Characters
Posted 医生工程师
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode3. Longest Substring Without Repeating Characters相关的知识,希望对你有一定的参考价值。
题目:
Given a string, find the length of the longest substring without repeating characters.
Examples:
Given "abcabcbb"
, the answer is "abc"
, which the length is 3.
Given "bbbbb"
, the answer is "b"
, with the length of 1.
Given "pwwkew"
, the answer is "wke"
, with the length of 3. Note that the answer must be a substring, "pwke"
is a subsequence and not a substring.
思路大概是建立一个映射表,遍历整个字符串,如果字符对应映射表的index值为-1,说明字符没出现过,计算长度大小,更新maxLength。如果字符出现过,那么就重新开始计算。遍历后得到最后结果。
class Solution { public: int lengthOfLongestSubstring(string s) { int indexOfChar[256]; memset(indexOfChar, -1, sizeof(indexOfChar)); int maxLength = 0; int initIndex = -1; for (int i = 0; i < s.length(); ++i){ if (indexOfChar[s[i]] > initIndex){ initIndex = indexOfChar[s[i]]; } indexOfChar[s[i]]=i; maxLength=max(maxLength, i - initIndex); } return maxLength; } };
以上是关于LeetCode3. Longest Substring Without Repeating Characters的主要内容,如果未能解决你的问题,请参考以下文章
leetcode3. Longest Substring Without Repeating Characters
Leetcode3---Longest Substring Without Repeating Characters
leetcode3 Longest Substring Without Repeating Characters
LeetCode 3. Longest Substring Without Repeating Characters
3. 没有重复字母的最长子串 [leetcode 3: Longest Substring Without Repeating Characters]
3. 没有重复字母的最长子串 [leetcode 3: Longest Substring Without Repeating Characters]