128 最長連續序列

2021-10-06 22:04:42 字數 910 閱讀 9170

難度:困難 2020/6/6每日一題打卡√

最近都昏昏沉沉的,不想好好學習,昨天的題拖到今天才寫,而且還看了答案

** 題目描述**

解題思路

要求了演算法的時間複雜度,一般要求時間複雜度就用空間換時間,要求空間複雜度就用時間換空間(不過情況比較少見),所以用雜湊表來儲存陣列元素,能在o(1)時間內查詢

把所有的數放在乙個雜湊表裡,每次遇到乙個,就搜尋它前面的數字和後面的數字,避免重複搜尋所以查詢乙個就刪掉乙個,維護當前最長的區間長度。

128 最長連續序列

題目 給定乙個未排序的整數陣列,找出最長連續序列的長度。要求演算法的時間複雜度為 o n 輸入 100,4,200,1,3,2 輸出 4 解釋 最長連續序列是 1,2,3,4 它的長度為 4。關鍵是使用雜湊表儲存。o n 複雜度 乙個序列為x,x 1,x 2,x y,那麼對於x 1,x 2,x y這...

128 最長連續序列

給定乙個未排序的整數陣列,找出最長連續序列的長度。要求演算法的時間複雜度為 o n 示例 輸入 100,4,200,1,3,2 輸出 4 解釋 最長連續序列是 1,2,3,4 它的長度為 4。思路 hash表 列舉,我們先用hash set儲存每乙個數,再遍歷每乙個數i為起始位置時,查詢是否存在i ...

128 最長連續序列

複雜度分析 時間複雜度 o n 其中 n 為陣列的長度。空間複雜度 o n 雜湊表儲存陣列中所有的數需要 o n 的空間。題解 class solution int next val 1 while table.find next table.end length max length,l retu...