紅黑樹,記得剛買那本書的時候我就發現有這個東西,覺得很神秘,終於接觸到了,並且,我已經寫出來了.很高興.
插入的例程是書上自帶的,我給**實現了.細節部分,我並不是很清楚.刪除例程,是自己寫的,全下來寫了大概15小時,很辛苦.昨天晚上到家就開始寫,今天到家也是立刻就開始寫,寫完了.
我想說的是,關於刪除例程, 演算法部分的自己構建我很滿意,旋轉部分的細節實現以及細節,也是自己發現並總結的,而且是對的.很辛苦的過程啊,堅持過來了,哈哈.
並沒有模組化刪除例程,因為那個函式不容易建立,而且也覺得,這樣很方便閱讀,很好,哈哈.
還有一些想說的,就不該是這篇部落格該說的了.上我的**吧.
紅黑樹(c實現)
學習紅黑樹原理,網路上有很多文章。學習紅黑樹的具體實現,個人推薦去看jdk中的treemap原始碼。因為該原始碼很簡潔,並且很容易改為其它語言的實現,最重要的是該份實現得到世人的認可,可以保證是沒問題的 下面是我根據其實現,使用c語言改寫的紅黑樹實現,目前只有紅黑樹的插入實現。include inc...
紅黑樹C 實現
完整實現了一遍紅黑樹,程式就當作自己的筆記好了 紅黑樹,顧名思義,就是紅黑相間的樹,它借由紅黑規則實現了二叉排序樹的平衡。紅黑規則如下 1.每個節點不是紅就是黑 2.根總是黑色 3.若節點為紅色,它的子節點必須為黑色 4.從根到葉的每條路徑,必須包含相同數目的黑色節點 插入和刪除節點時都要遵循紅黑規...
紅黑樹下 紅黑樹的實現
1.實現紅黑樹的基本思想 實際上,紅黑樹是有固定的平衡過程的 遇到什麼樣的節點分布,我們就對應怎麼去調整。只要按照這些固定的調整規則來操作,就能將乙個非平衡的紅黑樹調整成平衡的。首先,我們需要再來看一下紅黑樹的定義 在插入 刪除節點的過程中,第 三 四點要求可能會被破壞,所以 平衡調整 實際上就是把...