遞歸常用來解決一些可拆分的,并且拆分到一定程度自然得到解的問題,最經(jīng)典的就是斐波那契數(shù)列(1,1,2,3,5......),從第三個數(shù)開始,每個...

遞歸常用來解決一些可拆分的,并且拆分到一定程度自然得到解的問題,最經(jīng)典的就是斐波那契數(shù)列(1,1,2,3,5......),從第三個數(shù)開始,每個...
一、分治 分治( Divide-and-Conquer )及分而治之,就是把一個較為復(fù)雜的問題分成多個規(guī)模較小但結(jié)構(gòu)和原問題相同的或相似的子問題...
二分的性質(zhì) 若一組數(shù)有單調(diào)性則一定可以二分,但可以二分的題目不一定有單調(diào)性(有單調(diào)性則一定可以二分,沒有單調(diào)性也有可能可以二分) 二分的本質(zhì)(邊...
簡單排序(冒泡&選排) 選擇排序 選排原理 選擇排序是一種比較簡單直觀的排序算法,估計(jì)也是很多人接觸的第一個排序算法;它的思想原理是:首先在未排...
在 Flutter ConstraintLayout 中用到了計(jì)數(shù)排序,眾所周知,計(jì)數(shù)排序在某些場景下可以說是最快的排序算法,它有時(shí)甚至不需要元...
迫于 Notion 的客戶端比較慢,而且操作路徑有點(diǎn)長,如果想當(dāng)做快速筆記或者 TODO 來用還是不太夠。 正好前段時(shí)間因?yàn)橐咔樵诩掖巳齻€月沒...
什么樣的問題適合用動態(tài)規(guī)劃來解決呢?換句話說,動態(tài)規(guī)劃能解決的問題有什么規(guī)律可循呢?實(shí)際上,動態(tài)規(guī)劃作為一個非常成熟的算法思想,很多人對此已經(jīng)做...
貪婪算法 貪婪算法,也被稱為“貪心算法”。貪婪算法分階段地工作。在每一個階段,都可以認(rèn)為所作決定是好的,而不考慮將來的后果。一般來說,這意味著選...
網(wǎng)頁爬蟲是搜索引擎中的非常重要的系統(tǒng),負(fù)責(zé)爬取幾十億、上百億的網(wǎng)頁。爬蟲的工作原理是,通過解析已經(jīng)爬取頁面中的網(wǎng)頁鏈接,然后再爬取這些鏈接對應(yīng)的...
樹(tree)可以用幾種方式定義。定義樹的一種自然的方式是遞歸方法。一棵樹是一些節(jié)點(diǎn)的集合。這個集合可以是空集;若非空,則一棵樹由稱作根(roo...