1.永遠不要沉迷碎片化的知識
2.謹慎播撒你的精力種子
3.改變我們的人生的,不單單是道理,還有方法
陣列1115
字串551
動態規劃406
雜湊表403
數學386
深度優先搜尋281
排序247
廣度優先搜尋227
樹224
貪心215
二叉樹195
二分查詢184
資料庫178
雙指標173
矩陣172
位運算151
棧140
設計131
堆(優先佇列)114
回溯107
圖93鍊錶90
模擬80
字首和75
滑動視窗73
計數66
並查集66
遞迴60
二叉搜尋樹54
分治51
字典樹49
單調棧44
有序集合41
佇列37
狀態壓縮33
記憶化搜尋33
幾何32
線段樹25
拓撲排序24
博弈23
列舉23
雜湊函式22
資料流20
樹狀陣列19
字串匹配18
互動18
滾動雜湊14
隨機化14
最短路14
組合數學13
歸併排序11
雙向鍊錶11
單調佇列10
快速選擇10
數論10
迭代器10
腦筋急轉彎10
概率與統計9
多執行緒9
桶排序8
計數排序6
字尾陣列5
最小生成樹5
掃瞄線4
shell4
水塘抽樣4
強連通分量2
尤拉迴路2
拒絕取樣2
基數排序2
雙連通分量1
1、單鏈表的建立和遍歷
2、求單鏈表中節點的個數
3、查詢單鏈表中的倒數第k個結點(劍指offer,題15)
4、查詢單鏈表中的中間結點
5、合併兩個有序的單鏈表,合併之後的鍊錶依然有序【出現頻率高】(劍指offer,題17)
6、單鏈表的反轉【出現頻率最高】(劍指offer,題16)
7、從尾到頭列印單鏈表(劍指offer,題5)
8、判斷單鏈表是否有環
9、取出有環鏈表中,環的長度
10、單鏈表中,取出環的起始點(劍指offer,題56)。本題需利用上面的第8題和第9題。
11、判斷兩個單鏈表相交的第乙個交點(劍指offer,題37)
給出乙個鍊錶[1, 2, 3, 4, 5]
反轉為[5, 4, 3, 2, 1]
在對鍊錶進行操作時,一種常用的技巧是新增乙個啞節點(dummy node),它的 \textitnext 指標指向鍊錶的頭節點。這樣一來,我們就不需要對頭節點進行特殊的判斷了。
迭代反轉鍊錶
遞迴反轉鍊錶
頭插法反轉鍊錶
所謂頭插法,是指在原有鍊錶的基礎上,依次將位於鍊錶頭部的節點摘下,然後採用從頭部插入的方式生成乙個新鍊錶,則此鍊錶即為原鍊錶的反轉版
就地逆置法反轉鍊錶
力扣陣列面試題04
在乙個 n m 的二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。示例 現有矩陣 matrix 如下 1,4,7,11,15 2,5,8,12,19 3,6,9,16,22 10,13,1...
力扣網 演算法面試題彙總 最長公共子串行
1143.最長公共子串行 給定兩個字串 text1 和 text2,返回這兩個字串的最長公共子串行的長度。乙個字串的 子串行 是指這樣乙個新的字串 它是由原字串在不改變字元的相對順序的情況下刪除某些字元 也可以不刪除任何字元 後組成的新字串。例如,ace 是 abcde 的子串行,但 aec 不是 ...
力扣 面試題 02 07 鍊錶相交
鍊錶相交 面試題 02.07.鍊錶相交 給定兩個 單向 鍊錶,判定它們是否相交並返回交點。請注意相交的定義基於節點的引用,而不是基於節點的值。換句話說,如果乙個鍊錶的第k個節點與另乙個鍊錶的第j個節點是同一節點 引用完全相同 則這兩個鍊錶相交。示例 1 輸入 intersectval 8,lista...