3. Longest Substring Without Repeating Characters

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xhjj520/article/details/80332026

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.

import java.util.HashMap;

class Solution {
    public int lengthOfLongestSubstring(String s) {
        
        char [] strarr=s.toCharArray();
        HashMap<Character,Integer> m=new HashMap<Character,Integer>();
        int res=0;
        for(int i=0,j=0;i<strarr.length;i++)
        {
            if(m.containsKey(strarr[i]))
            {
                 j=Math.max(m.get(strarr[i]),j);
            }
            res=Math.max(res,i-j+1);
            m.put(strarr[i],i+1);
        }
        
        return res;
    }
}

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试