LeetCode 20190920

03 无重复字符的最长子串
哈希表可以类似Python的字典 可以记录key对应的value,那么可以记录每个字符的位置
建立一个逻辑的滑动窗口来存放最长的子串
所以设定left在滑动窗口左边的一个位置
res用来存放最大的长度

class Solution {
public:
    int lengthOfLongestSubstring(string s) {
        int res=0,left=-1,n=s.size();
        unordered_map<int,int >m;
        for(int i =0;i<n;i++){
            if(m.count(s[i]) && m[s[i]]>left){
                left=m[s[i]];
            }
            m[s[i]]=i;
            res=max(res,i-left);
        }
    return res;
    }

};

主要在于建立这个滑动窗口

04 寻找两个有序数组的中位数
这个主要是限定了时间复杂度O(log (m+n)),所以不可能想当然的把两个数组合并然后sort
所以要在两个数组间使用二分法

发布了44 篇原创文章 · 获赞 9 · 访问量 3378

猜你喜欢

转载自blog.csdn.net/puying1/article/details/101078804
今日推荐