zoukankan      html  css  js  c++  java
  • Longest Substring Without Repeating Characters

    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.

    HashMap

    public class Solution {
        public int lengthOfLongestSubstring(String s) {
          int max = 0;
          int start = 0;
          int end = 0;
          if(s.isEmpty()){
              return 0;
          }
          max = 1;
          HashMap<Character, Integer> map = new HashMap<Character, Integer>();
          char stringArray[] = s.toCharArray();
          while(end < s.length()){
              if(map.containsKey(stringArray[end])){
                  if((end - start) > max)
                    max = end - start ;
                  if(map.get(stringArray[end]) >= start)
                    start = map.get(stringArray[end]) + 1 ;
              }
              map.put(stringArray[end], end);
              end++;
          }
          return Math.max(max, end - start);
        }
    }
    

      

  • 相关阅读:
    safari调试iphone
    git 本地仓库关联远程仓库
    video 自动播放及循环播放问题
    webpack4系列之【3. webpack4优化记录】
    展示博客
    第三天冲刺
    第二天冲刺
    第一天冲刺
    UML设计
    Alpha项目冲刺
  • 原文地址:https://www.cnblogs.com/joannacode/p/5816535.html
Copyright © 2011-2022 走看看