标签:
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.
1 // https://discuss.leetcode.com/topic/30941/here-is-a-10-line-template-that-can-solve-most-substring-problems/12 2 class Solution { 3 public: 4 int lengthOfLongestSubstring(string s) { 5 int begin = 0, end = 0, d =0; 6 int map[128]; 7 memset(map, 0, 128 * sizeof(int)); 8 int counter = 0; 9 10 while (end < s.size()){ 11 if (map[s[end]] > 0) counter++; 12 map[s[end]]++; 13 end++; 14 while (counter > 0){ 15 if (map[s[begin]] > 1) counter--; 16 map[s[begin]]--; 17 begin++; 18 } 19 d = max(d, end - begin); 20 } 21 22 return d; 23 } 24 };
[LeetCode #3] Longest Substring Without Repeating Characters
标签:
原文地址:http://www.cnblogs.com/amadis/p/5904342.html