1、二叉樹
父節點至多只能有兩個子節點
2、滿二叉樹
二叉樹的每一層節點數達到最大值,n層的滿二叉樹有2的n次方-1個節點
3、完全二叉樹
除最後一層外,其他層節點達到最大值,最後一層從左向右依次排列。
個人理解從根節點開始挨個放節點,不能跳著放。最後一層,有右節點必然有左節點,有左節點可以沒有右節點。
4、平衡二叉樹
二叉樹的葉子節點所在的層級差不大於1
5、紅黑樹
紅黑樹是平衡二叉樹的一種,用更複雜的演算法來保證二叉樹的平衡。
根節點到葉子節點所在層經過的黑色節點個數相同
紅色節點子節點只能是黑色節點
根節點為黑色節點
左旋、右旋、變色 (不懂)
6、b樹(b-樹)
多節點的平衡樹,資料索引直接儲存在節點上
7、b+樹
多節點的平衡樹,資料索引全部順序存放在葉子結點上,葉子節點鍊錶,根據b+樹特性,子節點包含父節點所有資訊,所以葉子結點包含整個樹的全部資訊。
8、二叉樹查詢
先序遍歷(根左右) 中序遍歷(左根右) 後序遍歷(左右根)
用遞迴來做
關於mysql查詢 關於MYSQL 查詢
你想要的是這種效果嗎?建立表city cost create table city cost id int primary key auto increment,cost time date,city varchar 20 money int auto increment 1 插入資料 insert...
平衡查詢樹之2 3查詢樹
二叉查詢樹不能保證樹的平衡性,在最壞情況下,查詢插入操作需要線性時間。為了保證查詢樹的平衡性,有了2 3樹的概念。它是實現紅黑樹的基礎。2 3樹中有兩種結點 當插入結點時,通過一些基本操作,可以保證這棵樹是完美平衡的,因此查詢和插入的時間會是對數級的。插入過程有如下幾種可能性 區域性變換不會影響樹的...
關於動態最大子段和 線段樹查詢
question 有n個數,a 1 到a n 接下來q次查詢,每次動態指定兩個數l,r,求a l 到a r 的最大子段和。子段的意思是連續非空區間。輸入描述 input description 第一行乙個數n。第二行n個數a 1 a n 第三行乙個數q。以下q行每行兩個數l和r。輸出描述 outpu...