原创 [排序]選擇排序、冒泡排序、插入排序、希爾排序、歸併排序、快速排序、堆排序算法及比較

[排序]選擇排序、冒泡排序、插入排序、希爾排序、歸併排序、快速排序、堆排序算法及比較 目錄[排序]選擇排序、冒泡排序、插入排序、希爾排序、歸併排序、快速排序、堆排序算法及比較1.選擇排序2.冒泡排序2.1常規版2.2第一次改進2.

原创 [劍指 Offer]二叉搜索樹與雙向鏈表

[劍指 Offer]二叉搜索樹與雙向鏈表 劍指 Offer-二叉搜索樹與雙向鏈表 題目描述 輸入一棵二叉搜索樹,將該二叉搜索樹轉換成一個排序的循環雙向鏈表。要求不能創建任何新的節點,只能調整樹中節點指針的指向。 爲了讓您更好地理解

原创 [劍指offer]從上到下打印二叉樹

[劍指offer]從上到下打印二叉樹 劍指offer-從上到下打印二叉樹 題目描述 從上到下打印出二叉樹的每個節點,同一層的節點按照從左到右的順序打印。 例如: 給定二叉樹: [3,9,20,null,null,15,7],

原创 [劍指offer]從上到下打印二叉樹II——把二叉樹打印成多行

[劍指offer]從上到下打印二叉樹II-——把二叉樹打印成多行 劍指offer-從上到下打印二叉樹II 題目描述 從上到下按層打印二叉樹,同一層的節點按從左到右的順序打印,每一層打印到一行。 例如: 給定二叉樹: [3,9,20

原创 [劍指offer]二叉搜索樹的後序遍歷數列

[劍指offer]二叉搜索樹的後序遍歷數列 劍指offer-二叉搜索樹的後序遍歷序列 題目描述 輸入一個整數數組,判斷該數組是不是某二叉搜索樹的後序遍歷結果。如果是則返回 true,否則返回 false。假設輸入的數組的任意兩個數

原创 [劍指offer]從上到下打印二叉樹III——按之字形順序打印二叉樹

[劍指offer]從上到下打印二叉樹III——按之字形順序打印二叉樹 劍指offer-從上到下打印二叉樹III 題目描述 請實現一個函數按照之字形順序打印二叉樹,即第一行按照從左到右的順序打印,第二層按照從右到左的順序打印,第三行

原创 [劍指 Offer]二叉樹中和爲某一值的路徑

[劍指 Offer]二叉樹中和爲某一值的路徑 劍指 Offer-二叉樹中和爲某一值的路徑 題目描述 輸入一棵二叉樹和一個整數,打印出二叉樹中節點值的和爲輸入整數的所有路徑。從樹的根節點開始往下一直到葉節點所經過的節點形成一條路徑。

原创 [劍指 Offer]複雜鏈表的複製

[劍指 Offer]複雜鏈表的複製 劍指 Offer-複雜鏈表的複製 題目描述 請實現 copyRandomList 函數,複製一個複雜鏈表。在複雜鏈表中,每個節點除了有一個 next 指針指向下一個節點,還有一個 random

原创 剪繩子II

剪繩子II 劍指offer-剪繩子II 題目描述 給你一根長度爲 n 的繩子,請把繩子剪成整數長度的 m 段(m、n都是整數,n>1並且m>1),每段繩子的長度記爲 k[0],k[1]…k[m] 。請問 k[0]k[1]…*k[m