尋找最長不含有重複字元的子串

2021-09-02 22:25:06 字數 803 閱讀 3478

變數:開始索引、map[字元]索引、最大長度

如果碰到map已經存在該字元的並且出現位置》=開始索引,將map中記錄的位置的下乙個位置當做開始索引

如果當前不重複區間大於記錄最大長度儲存到最大長度

將當前遍歷到的字元索引儲存到map[byte]int中,byte存放字元、int存放索引

package main

import

"fmt"

func

getnorepeatstringmaxlength

(str string

)int

if i-start+

1> maxlength

lastoccurred[ch]

= i }

return maxlength

}func

main()

package main

import

"fmt"

func

getnorepeatstringmaxlength

(str string

)int

if i-start+

1> maxlength

lastoccurred[ch]

= i }

return maxlength

}func

main()

尋找最長不含有重複字串的長度

例 abcabcabc 最大長度為3 abc,解題思路 首先我們需要乙個start來記錄當前最長不包含字串的開始座標,假設當從左往右遍歷到x的位置時,0,1,2,3,4,5,6,7 此時我們要保證從start的座標到x的座標包不包含x,也就是 從start 到 x 1的座標內有沒有包含x,所以我們需...

不含有重複字元的最長子串

給定乙個字串,請你找出其中不含有重複字元的 最長子串 的長度。示例 1 輸入 abcabcbb 輸出 3 解釋 因為無重複字元的最長子串是 abc 所以其長度為 3。示例 2 輸入 bbbbb 輸出 1 解釋 因為無重複字元的最長子串是 b 所以其長度為 1。示例 3 輸入 pwwkew 輸出 3 ...

不含有重複字元的 最長子串 的長度。

題目 給定乙個字串,請你找出其中不含有重複字元的最長子串的長度。class solution object def lengthoflongestsubstring self,s type s str rtype int 儲存歷史迴圈中最長的子串長度 max len 0 判斷傳入的字串是否為空 if...