LeetCode3. Longest Substring Without Repeating Characters

来源:互联网 发布:类似openvpn的软件 编辑:程序博客网 时间:2024/05/16 06:32

题目链接

输出最长不重复子串的长度。

一开始觉得是dp,转移方程写了半天没写出来。。看了下tag是双指针,用i和j维护不重复的子串端点。

class Solution {public:    int lengthOfLongestSubstring(string s) {        int len = s.length();        int a[300];        memset(a, 0, sizeof(a));        int j = 0, ans = 0;        for(int i = 0; i < len; i++){            if(!a[s[i]-' ']){                a[s[i]-' '] = 1;            }else{                ans = max(ans, (i-j));                while(s[j] != s[i]){                    a[s[j]-' '] = 0;                    j++;                }                j++;            }        }        ans = max(ans, (len-j));        return ans;    }};

坑爹的是居然不都是字母,还有其他符号,所以一开始减’a’就WA了。。

0 0
原创粉丝点击