簡述 快排是排序算法中繞不開的關鍵一環(huán),其中涉及到分治算法,二分查找等關鍵知識。 本文內容: 快排原理 代碼實現 分區(qū)過程圖示 <啊哈算法> 中...
簡述 算法導論中,在第二章提及了歸并排序,歸并排序是分治思想的一個重要實現,只要提及分治算法,就不得不提及歸并排序。 原理 歸并排序有 2 個步...
遞歸的時間復雜度計算較為麻煩。以下我們使用歸并排序的例子,對遞歸復雜度進行推演。 假設現在有一個歸并排序。他的運行總時間是 T(n),我們通過將...
1 什么是遞歸 遞歸是一種非常高效,簡潔的編碼技巧,一種應用非常廣泛的算法。比如 DFS 深度優(yōu)先搜索、前后中序二叉樹遍歷等都是使用遞歸。 方式...
題目描述: 具體如下圖: 即,將 L1 和 L2 鏈表進行合并。 思路1:遞歸 每次比較 l1 和 val 和 l2 的 val,誰小,就繼續(xù)循...
題目描述: 這里考察的也是快慢指針。 當然,如果我們用 HashSet ,也可以實現。當時明顯不是這道題的考察目的。 我們假設,使用 2 個指針...
題目描述: 這題考察的也是快慢指針。 我們對偶數和奇數分別進行分析: 當鏈表是偶數時,我們需要判斷他自身是否為 null,如果為 null,說明...
引言 題目描述: 簡單說,這道題的的公式就是:(length - n + 1).next = (length - n).next;即,將 n 的...
鏈表題中,鏈表反轉應該是出現頻率最高的一道題。 如何實現? 我們分析一下,一個鏈表,【1, 2,3,4,5】,反轉成 【5,4,3,2,1】,我...