1. 程式人生 > 實用技巧 >typescript筆記-- 基礎型別

typescript筆記-- 基礎型別

public int lengthOfLongestSubstring(String s) {
        //用雜湊表儲存
        int len = s.length();
        if(len<=1) return len;
        char[] c = s.toCharArray();
        HashMap<Character,Integer> map = new HashMap<>();
        map.put(c[0],0);
        int max_len = 1;
        int i = 0,j = 1;
        
while(j<len){ if(map.containsKey(c[j])){ int index = map.get(c[j]); max_len = Math.max(max_len,j-i); for(int k = i;k<=index;k++){ map.remove(c[k]); } i = index+1; map.put(c[j],j); j
++; }else{ map.put(c[j],j); j++; } } return Math.max(max_len,j-i); }


public int lengthOfLongestSubstring(String s) {
        int[] alpha = new int[128];
        for(int i=0;i<128;i++){
            alpha[i] = -1;
        }
        
int left = 0; int ans = 0; for(int i=0;i<s.length();i++){ int temp = s.charAt(i); if(alpha[temp] <= left){ ans = Math.max(i - left+1,ans); }else{ left = alpha[temp]; } alpha[temp] = i+1; } return ans; }