public static list getnorepeatstring(string str)
//設定最長子串和其長度
maxlen=nowlen;
longlists.add(str.substring(start,i));
}//只要包含重複的字元,就更新map中的最新位置
//將起始位置設定為重複字元第一次出現位置的後乙個位置
start=pre+1;
map.put(str.charat(i), i);
}else
}//是為了解決從來不包含重複字元的情況
if(i-start>=maxlen)
longlists.add(str.substring(start,i));
}return longlists;
}
無重複的最長子串
1 題目 輸入 abcabcbb 輸出 3 解釋 因為無重複字元的最長子串是 abc 所以其長度為 3。窮舉出所有的字串 i,j兩次迴圈 i,j 就可以表示所有子串的情況 思路 判斷是否唯一,跳出迴圈 掏出迴圈思考了好久,abcbe 為何b包含在abc中直接跳出因為be其實在b這個位置的索引已經不能...
無重複字元的最長子串java實現
首先把字串轉為字串陣列,這樣就可以逐一進行判斷。為了降低演算法的時間複雜度,我們使用linkedlist來儲存資料,這樣我們只要遍歷字串陣列一遍就可以輸出結果。逐一判斷,一旦遇到在鍊錶中不存在的字元,就加入鍊錶,若在鍊錶中已存在,則把鍊錶中的第乙個遇到的相同字元及其之前的字元刪除,在這個過程中更新最...
無重複字元最長子串
給定乙個字串,請你找出其中不含有重複字元的 最長子串 的長度。示例 1 輸入 abcabcbb 輸出 3 解釋 因為無重複字元的最長子串是 abc 所以其長度為 3。示例 2 輸入 bbbbb 輸出 1 解釋 因為無重複字元的最長子串是 b 所以其長度為 1。示例 3 輸入 pwwkew 輸出 3 ...