m階的b樹滿足的特徵:
(1)樹的根是一片樹葉,或者是兒子數在2到m之間,即[2,m)
(2)除根外,所有非樹葉節點的兒子數在⌈m/
2⌉
\lceil \rceil
⌈m/2
⌉到m之間,即[⌈m/
2⌉
\lceil \rceil
⌈m/2
⌉,m)。
(3)所有樹葉都在相同的深度。
(4)乙個節點最多容納m-1個數。
雜湊1、衝突:當兩個關鍵字到同乙個值時稱為衝突。
2、解決衝突:分離鏈結法和開放定址法
3、填裝因子:雜湊表中的元素個數與雜湊表的大小之比。
4、分離鏈結法:將雜湊到同乙個值的所有元素儲存到一張表中,通過雜湊函式查要插入的表,然後插入表頭。
優點:處理簡單,無堆積現象;易於刪除;填裝因子較小,節省空間。
缺點:給新單元分配位址需要時間,指標需要額外的空間。
填裝因子接近1.
5、開放定址法:h(x) = (hash(x) + f(i))%tablesize;
填裝因子小於0.5;
需要懶惰刪除,因為元素可能引起了衝突繞過了當前元素,如果刪除,在查詢時會出錯。
(1)線性探測法:f(i) = i;即使表相對較空,所佔據的單元也會聚集形成一些區塊,稱為一次聚集。
(2)平方探測法:f(i) = ii,或者f(i) = f(i-1) + 2i-1;雜湊到同一位置上的元素將探測相同的備菜單元,成為二次探測。
(3)雙雜湊:有兩個雜湊函式hash1(x)和hash2(x),當發生衝突時,用第二個雜湊函式來解決衝突。
(4)再雜湊:當元素過滿或者插入時間過長,建立乙個大約兩倍的表,再用乙個新的雜湊函式,將原始表中的值按照新的對映插入新錶中。
資料庫索引(B樹,B 樹,雜湊)
一.什麼是索引?索引的目的就是便於快速查詢。一本書的索引就是目錄,可以讓我們快速定位到要查詢的內容 資料庫的資料是以記錄的方式存在的,所以索引的目的就是便於查詢某一些記錄。索引型別 常見的資料庫書籍中的關於索引類別的一些稱呼 唯一索引 不允許其中任何兩行具有相同值的索引 使用主鍵和候選鍵建立的索引就...
資料庫索引(B樹,B 樹,雜湊)
資料庫索引是儲存引擎用於快速找到記錄的一種資料結構。高效能mysql 一.什麼是索引?索引的目的就是便於快速查詢。一本書的索引就是目錄,可以讓我們快速定位到要查詢的內容 資料庫的資料是以記錄的方式存在的,所以索引的目的就是便於查詢某一些記錄。索引型別 常見的資料庫書籍中的關於索引類別的一些稱呼 唯一...
B樹(B樹 ,B 樹 ,B 樹)與多叉樹
我們先來看看二叉樹存在的問題 二叉樹的操作 效率較高,但是也存在問題,請看下面的二叉樹 二叉樹需要載入到記憶體的,如果二叉樹的節點少,沒有什麼問題,但是如果二叉樹的節點很多 比如1億 就存在如下問題 問題1 在構建二叉樹時,需要多次進行i o操作 海量資料存在資料庫或檔案中 節點海量,構建二叉樹時,...