zoukankan      html  css  js  c++  java
  • leetcode 3 无重复字符的最长子串

    给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。

    示例 1:

    输入: "abcabcbb"
    输出: 3
    解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。
    示例 2:

    输入: "bbbbb"
    输出: 1
    解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。
    示例 3:

    输入: "pwwkew"
    输出: 3
    解释: 因为无重复字符的最长子串是 "wke",所以其长度为 3。
      请注意,你的答案必须是 子串 的长度,"pwke" 是一个子序列,不是子串。

    来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/longest-substring-without-repeating-characters
    著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

    代码:

    class Solution {
    public:
        int lengthOfLongestSubstring(string s) {
            int d[300] = {0},l = 0,ans = 0;
            for(int i = 0;i < s.size();i ++) {
                if(d[s[i]]) {
                    l = max(l,d[s[i]]);//更新左位置
                }
                d[s[i]] = i + 1;
                ans = max(ans,i + 1 - l);
            }
            return ans;
        }
    };
    如果觉得有帮助,点个推荐啦~
  • 相关阅读:
    4.JDBC编程
    android 多线程
    android 网络请求Ⅰ
    android 数据存储Ⅱ
    android 数据存储Ⅰ
    android 界面设计基本知识Ⅳ
    《将博客搬至CSDN》
    android 界面设计基本知识Ⅲ
    android 界面设计基本知识Ⅱ
    android 界面设计基本知识
  • 原文地址:https://www.cnblogs.com/8023spz/p/13690686.html
Copyright © 2011-2022 走看看