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

    唉,
    行吧,今天重新开始

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

    示例 1:

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

    示例 2:

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

    示例 3:

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

    直接上代码把

    class Solution {
        public int lengthOfLongestSubstring(String s) {
            if (null == s) {
                return 0;
            }
            char[] sChar = s.toCharArray();
            if (sChar.length == 1) {
                return 1;
            }
            
            int size = 0;
            for (int i = 0; i <sChar.length; i++) {
                Set<Character> set = new HashSet<>();
                for (int j = i; j < sChar.length; j++) {
                    if (set.contains(sChar[j])) {
                        break;
                    }
                    set.add(sChar[j]);
                    size = set.size() > size ?  set.size() : size;
                }
            }
            return size;
    
        }
    }
    
  • 相关阅读:
    夜空中最亮的星
    让我留在你身边
    反思
    又想起民谣那诗
    初学积性函数
    P1049 装箱问题(01背包)
    set
    紫书 习题 10-4 UVa 1644(素数筛)
    紫书 习题 10-2 UVa 808(建立坐标+找规律)
    紫书 习题 10-1UVa 111040(找规律)
  • 原文地址:https://www.cnblogs.com/zhangqian27/p/13648720.html
Copyright © 2011-2022 走看看