LeetCode 演算法學習 2

2021-09-05 10:30:28 字數 936 閱讀 7271

longest substring without repeating characters

given a string, find the length of the longest substring without repeating characters.

example 1:

input: 「abcabcbb」

output: 3

explanation: the answer is 「abc」, with the length of 3.

example 2:

input: 「bbbbb」

output: 1

explanation: the answer is 「b」, with the length of 1.

example 3:

input: 「pwwkew」

output: 3

explanation: 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.

求最長無重複元素的子串。

採用動態規劃的思想,在遍歷到出現重複元素時,轉到該重複元素第一次出現的位置繼續查詢。時間複雜度為o(n),空間複雜度為o(1)。

int lengthoflongestsubstring(string s)  else 

}return max;

}

這是一道比較經典的動態規劃問題,一邊遍歷一邊尋找,類似的還有kmp演算法匹配字串等,使用類似的思想可以快速的解決一些問題。

演算法學習 2

題目要求 乙個數如果恰好等於它的因子之和 包括1,但不包括這個數本身 這個數就稱為 完數 例如28的因子為1,2,4,7,14,而28 1 2 4 7 14.因此28是 wan shu 完數.編寫演算法找出1000之內的所有完數,並按下面格式輸出其因子 28 it s factors are 1,2...

演算法學習 2

當我們在沒有學習演算法之前,在做排序問題的時候,首先想到的應該是選擇排序或者是氣泡排序。其中選擇排序可能是大腦最自然的思考方式。很小的時候上體育課,在操場上,同學們零零散散站著,老師掃了一眼,叫了最高個同學站在到前面,然後再在剩餘同學中選擇最高的依次站成一排,重複此過程直到最後乙個同學也站入隊伍了後...

STL演算法學習2

二 變異演算法 是一組能夠修改容器元素資料的模板函式。copy v.begin v.end l.begin 將v中的元素複製到l中。1元素複製copy include include include include using namespace std void main 2元素變換transfo...