分享400多道算法題,來挑戰(zhàn)吧
今天推薦一個(gè)非常有誠意的公眾號(hào):「數(shù)據(jù)結(jié)構(gòu)和算法」。
號(hào)主有近10年的開發(fā)經(jīng)驗(yàn),對(duì)算法情有獨(dú)鐘,近3年來他堅(jiān)持在公眾號(hào)上寫算法題解,總共輸出了400多道題,其中不乏一些經(jīng)典題型,都是以圖文結(jié)合的方式,讓算法變的不那么枯燥,通過他的這些文章,可以讓你輕松入門。
「可以看下他的部分系列文章:」
動(dòng)態(tài)規(guī)劃相關(guān)算法
465. 遞歸和動(dòng)態(tài)規(guī)劃解三角形最小路徑和
430,劍指 Offer-動(dòng)態(tài)規(guī)劃求正則表達(dá)式匹配
423,動(dòng)態(tài)規(guī)劃和遞歸解最小路徑和
413,動(dòng)態(tài)規(guī)劃求最長(zhǎng)上升子序列
411,動(dòng)態(tài)規(guī)劃和遞歸求不同路徑 II
407,動(dòng)態(tài)規(guī)劃和滑動(dòng)窗口解決最長(zhǎng)重復(fù)子數(shù)組
395,動(dòng)態(tài)規(guī)劃解通配符匹配問題
回溯算法
442,劍指 Offer-回溯算法解二叉樹中和為某一值的路徑
DFS和BFS相關(guān)算法題
453,DFS和BFS解求根到葉子節(jié)點(diǎn)數(shù)字之和
422,劍指 Offer-使用DFS和BFS解機(jī)器人的運(yùn)動(dòng)范圍
雙指針相關(guān)問題
466. 使用快慢指針把有序鏈表轉(zhuǎn)換二叉搜索樹
二叉樹相關(guān)算法
458,填充每個(gè)節(jié)點(diǎn)的下一個(gè)右側(cè)節(jié)點(diǎn)指針 II
435,劍指 Offer-對(duì)稱的二叉樹
433,劍指 Offer-樹的子結(jié)構(gòu)
401,刪除二叉搜索樹中的節(jié)點(diǎn)
373,數(shù)據(jù)結(jié)構(gòu)-6,樹
鏈表相關(guān)算法
462. 找出兩個(gè)鏈表的第一個(gè)公共節(jié)點(diǎn)
459. 刪除鏈表的倒數(shù)第N個(gè)節(jié)點(diǎn)的3種方式
431,劍指 Offer-鏈表中倒數(shù)第k個(gè)節(jié)點(diǎn)
429,劍指 Offer-刪除鏈表的節(jié)點(diǎn)
386,鏈表中的下一個(gè)更大節(jié)點(diǎn)
棧相關(guān)算法
416,劍指 Offer-用兩個(gè)棧實(shí)現(xiàn)隊(duì)列
其他經(jīng)典算法
位運(yùn)算相關(guān)算法
383,不使用“+”,“-”,“×”,“÷”實(shí)現(xiàn)四則運(yùn)算
425,劍指 Offer-二進(jìn)制中1的個(gè)數(shù)
數(shù)據(jù)結(jié)構(gòu)
348,數(shù)據(jù)結(jié)構(gòu)-1,數(shù)組
352,數(shù)據(jù)結(jié)構(gòu)-2,鏈表
359,數(shù)據(jù)結(jié)構(gòu)-3,隊(duì)列
363,數(shù)據(jù)結(jié)構(gòu)-4,棧
368,數(shù)據(jù)結(jié)構(gòu)-5,散列表
373,數(shù)據(jù)結(jié)構(gòu)-6,樹
378,數(shù)據(jù)結(jié)構(gòu)-7,堆
排序
查找
其他算找
427,劍指 Offer-數(shù)值的整數(shù)次方
419,劍指 Offer-旋轉(zhuǎn)數(shù)組的最小數(shù)字
404,劍指 Offer-數(shù)組中重復(fù)的數(shù)字
377,調(diào)整數(shù)組順序使奇數(shù)位于偶數(shù)前面
351,最少移動(dòng)次數(shù)使數(shù)組元素相等 II
342,計(jì)算各個(gè)位數(shù)不同的數(shù)字個(gè)數(shù)
太多了,就不在一一列舉了,具體可以到他公眾號(hào)(數(shù)據(jù)結(jié)構(gòu)和算法)查看,也可長(zhǎng)按下方二維碼識(shí)別查看
