數(shù)據(jù)結(jié)構(gòu) 有向無(wú)環(huán)圖-鄰接表數(shù)據(jù)結(jié)構(gòu) 算法 1.Kahn算法 Kahn算法實(shí)際上用的是貪心算法思想统求,思路非常簡(jiǎn)單、好懂扇雕。 定義數(shù)據(jù)結(jié)構(gòu)的時(shí)候,如果 s 需要先于 t 執(zhí)行窥摄,那...
如何量化兩個(gè)字符串的相似度镶奉? 編輯距離指的就是,將一個(gè)字符串轉(zhuǎn)化成另一個(gè)字符串崭放,需要的最少編輯操作次數(shù)(比如增加一個(gè)字符哨苛、刪除一個(gè)字符、替換一個(gè)字符)币砂。編輯距離越大移国,說(shuō)明兩個(gè)...
“一個(gè)模型三個(gè)特征”理論講解 什么是“一個(gè)模型”?它指的是動(dòng)態(tài)規(guī)劃適合解決的問題的模型道伟。我把這個(gè)模型定義為“多階段決策最優(yōu)解模型”迹缀。 什么是“三個(gè)特征”使碾?它們分別是最優(yōu)子結(jié)構(gòu)...
0-1 背包問題 備忘錄 動(dòng)態(tài)規(guī)劃-二維數(shù)組 動(dòng)態(tài)規(guī)劃-一維數(shù)組 0-1 背包問題升級(jí)版 回溯算法 動(dòng)態(tài)規(guī)劃-二維數(shù)組 動(dòng)態(tài)規(guī)劃-一維數(shù)組
字符串匹配算法 單模式串匹配算法 是在一個(gè)模式串和一個(gè)主串之間進(jìn)行匹配抖拴,也就是說(shuō),在一個(gè)主串中查找一個(gè)模式串腥椒。 多模式串匹配算法 就是在多個(gè)模式串和一個(gè)主串之間做匹配城舞,也就是...
BF算法 BF 算法中的 BF 是 Brute Force 的縮寫,中文叫作暴力匹配算法惨好,也叫樸素匹配算法煌茴。 我們?cè)谥鞔校瑱z查起始位置分別是0日川、1蔓腐、2…n-m且長(zhǎng)度為m的n...
無(wú)向圖 廣度優(yōu)先搜索(BFS) 它其實(shí)就是一種“地毯式”層層推進(jìn)的搜索策略,即先查找離起始頂點(diǎn)最近的龄句,然后是次近的回论,依次往外搜索散罕。 深度優(yōu)先搜索(DFS)
堆的應(yīng)用一:優(yōu)先級(jí)隊(duì)列 優(yōu)先級(jí)隊(duì)列葬燎,顧名思義误甚,它首先應(yīng)該是一個(gè)隊(duì)列。隊(duì)列最大的特性就是先進(jìn)先出谱净。不過(guò)窑邦,在優(yōu)先級(jí)隊(duì)列中,數(shù)據(jù)的出隊(duì)順序不是先進(jìn)先出壕探,而是按照優(yōu)先級(jí)來(lái)冈钦,優(yōu)先級(jí)最高...
二叉查找樹 它不僅僅支持快速查找一個(gè)數(shù)據(jù),還支持快速插入月培、刪除一個(gè)數(shù)據(jù)嘁字。這些都依賴于二叉查找樹的特殊結(jié)構(gòu)。二叉查找樹要求杉畜,在樹中的任意一個(gè)節(jié)點(diǎn)纪蜒,其左子樹中的每個(gè)節(jié)點(diǎn)的值,都要...
樹 節(jié)點(diǎn)的高度=節(jié)點(diǎn)到葉子節(jié)點(diǎn)的最大路徑(邊數(shù)) 節(jié)點(diǎn)的深度=根節(jié)點(diǎn)到這個(gè)節(jié)點(diǎn)所經(jīng)歷的邊的個(gè)數(shù) 節(jié)點(diǎn)的層數(shù)=節(jié)點(diǎn)的深度+1 樹的高度=根節(jié)點(diǎn)的高度 二叉樹 二叉樹此叠,顧名思義纯续,...