青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 195,  comments - 30,  trackbacks - 0

本文出處:http://blog.csdn.net/manesking/archive/2007/02/09/1505979.aspx
 

B樹

       即二叉搜索樹:

       1.所有非葉子結點至多擁有兩個兒子(Left和Right);

       2.所有結點存儲一個關鍵字;

       3.非葉子結點的左指針指向小于其關鍵字的子樹,右指針指向大于其關鍵字的子樹;

       如:

      

 

       B樹的搜索,從根結點開始,如果查詢的關鍵字與結點的關鍵字相等,那么就命中;否則,如果查詢關鍵字比結點關鍵字小,就進入左兒子;如果比結點關鍵字大,就進入右兒子;如果左兒子或右兒子的指針為空,則報告找不到相應的關鍵字;

       如果B樹的所有非葉子結點的左右子樹的結點數目均保持差不多(平衡),那么B樹的搜索性能逼近二分查找;但它比連續內存空間的二分查找的優點是,改變B樹結構(插入與刪除結點)不需要移動大段的內存數據,甚至通常是常數開銷;

       如:

      

 

   但B樹在經過多次插入與刪除后,有可能導致不同的結構:

 


   右邊也是一個B樹,但它的搜索性能已經是線性的了;同樣的關鍵字集合有可能導致不同的樹結構索引;所以,使用B樹還要考慮盡可能讓B樹保持左圖的結構,和避免右圖的結構,也就是所謂的“平衡”問題;      

       實際使用的B樹都是在原B樹的基礎上加上平衡算法,即“平衡二叉樹”;如何保持B樹結點分布均勻的平衡算法是平衡二叉樹的關鍵;平衡算法是一種在B樹中插入和刪除結點的策略;

 


B-樹

       是一種多路搜索樹(并不是二叉的):

       1.定義任意非葉子結點最多只有M個兒子;且M>2;

       2.根結點的兒子數為[2, M];

       3.除根結點以外的非葉子結點的兒子數為[M/2, M];

       4.每個結點存放至少M/2-1(取上整)和至多M-1個關鍵字;(至少2個關鍵字)

       5.非葉子結點的關鍵字個數=指向兒子的指針個數-1;

       6.非葉子結點的關鍵字:K[1], K[2], …, K[M-1];且K[i] < K[i+1];

       7.非葉子結點的指針:P[1], P[2], …, P[M];其中P[1]指向關鍵字小于K[1]的子樹,P[M]指向關鍵字大于K[M-1]的子樹,其它P[i]指向關鍵字屬于(K[i-1], K[i])的子樹;

       8.所有葉子結點位于同一層;

       如:(M=3)

 

       B-樹的搜索,從根結點開始,對結點內的關鍵字(有序)序列進行二分查找,如果命中則結束,否則進入查詢關鍵字所屬范圍的兒子結點;重復,直到所對應的兒子指針為空,或已經是葉子結點;

B-樹的特性:

       1.關鍵字集合分布在整顆樹中;

       2.任何一個關鍵字出現且只出現在一個結點中;

       3.搜索有可能在非葉子結點結束;

       4.其搜索性能等價于在關鍵字全集內做一次二分查找;

       5.自動層次控制;

       由于限制了除根結點以外的非葉子結點,至少含有M/2個兒子,確保了結點的至少利用率,其最底搜索性能為:

 

    

       其中,M為設定的非葉子結點最多子樹個數,N為關鍵字總數;

       所以B-樹的性能總是等價于二分查找(與M值無關),也就沒有B樹平衡的問題;

       由于M/2的限制,在插入結點時,如果結點已滿,需要將結點分裂為兩個各占M/2的結點;刪除結點時,需將兩個不足M/2的兄弟結點合并;

 


B+樹

       B+樹是B-樹的變體,也是一種多路搜索樹:

       1.其定義基本與B-樹同,除了:

       2.非葉子結點的子樹指針與關鍵字個數相同;

       3.非葉子結點的子樹指針P[i],指向關鍵字值屬于[K[i], K[i+1])的子樹(B-樹是開區間);

       5.為所有葉子結點增加一個鏈指針;

       6.所有關鍵字都在葉子結點出現;

       如:(M=3)

 

   B+的搜索與B-樹也基本相同,區別是B+樹只有達到葉子結點才命中(B-樹可以在非葉子結點命中),其性能也等價于在關鍵字全集做一次二分查找;

       B+的特性:

       1.所有關鍵字都出現在葉子結點的鏈表中(稠密索引),且鏈表中的關鍵字恰好是有序的;

       2.不可能在非葉子結點命中;

       3.非葉子結點相當于是葉子結點的索引(稀疏索引),葉子結點相當于是存儲(關鍵字)數據的數據層;

       4.更適合文件索引系統;

 

B*樹

       是B+樹的變體,在B+樹的非根和非葉子結點再增加指向兄弟的指針;

 

   B*樹定義了非葉子結點關鍵字個數至少為(2/3)*M,即塊的最低使用率為2/3(代替B+樹的1/2);

       B+樹的分裂:當一個結點滿時,分配一個新的結點,并將原結點中1/2的數據復制到新結點,最后在父結點中增加新結點的指針;B+樹的分裂只影響原結點和父結點,而不會影響兄弟結點,所以它不需要指向兄弟的指針;

       B*樹的分裂:當一個結點滿時,如果它的下一個兄弟結點未滿,那么將一部分數據移到兄弟結點中,再在原結點插入關鍵字,最后修改父結點中兄弟結點的關鍵字(因為兄弟結點的關鍵字范圍改變了);如果兄弟也滿了,則在原結點與兄弟結點之間增加新結點,并各復制1/3的數據到新結點,最后在父結點增加新結點的指針;

       所以,B*樹分配新結點的概率比B+樹要低,空間使用率更高;

 

小結

       B樹:二叉樹,每個結點只存儲一個關鍵字,等于則命中,小于走左結點,大于走右結點;

       B-樹:多路搜索樹,每個結點存儲M/2到M個關鍵字,非葉子結點存儲指向關鍵字范圍的子結點;

       所有關鍵字在整顆樹中出現,且只出現一次,非葉子結點可以命中;

       B+樹:在B-樹基礎上,為葉子結點增加鏈表指針,所有關鍵字都在葉子結點中出現,非葉子結點作為葉子結點的索引;B+樹總是到葉子結點才命中;

       B*樹:在B+樹基礎上,為非葉子結點也增加鏈表指針,將結點的最低利用率從1/2提高到2/3;

posted on 2011-02-22 13:53 luis 閱讀(276) 評論(0)  編輯 收藏 引用

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


<2009年6月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

常用鏈接

留言簿(3)

隨筆分類

隨筆檔案

文章分類

文章檔案

友情鏈接

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            免费毛片一区二区三区久久久| 国产精品亚洲第一区在线暖暖韩国| 国产欧美日韩91| 久久久久久久国产| 中文在线资源观看网站视频免费不卡| 老**午夜毛片一区二区三区| 一区二区三区国产精华| 亚洲国产精品久久人人爱蜜臀| 欧美新色视频| 欧美大片91| 香蕉精品999视频一区二区| 欧美高清视频一区| 久久久久国产一区二区| 亚洲一区二区三区精品在线| 亚洲成人原创| 亚洲国产老妈| 国产欧美亚洲一区| 国产精品日韩在线播放| 国产欧美一区二区精品性色| 欧美风情在线| 狂野欧美激情性xxxx| 午夜精品久久久久影视| 一区二区免费看| 99精品欧美一区二区三区综合在线 | 亚洲精品女人| 久久亚洲色图| 亚洲精品视频二区| 亚洲精品一区二区三区福利| 日韩午夜精品视频| 亚洲欧美日韩国产综合| 欧美在线不卡| 蜜桃精品久久久久久久免费影院| 亚洲国产精品一区二区第四页av| 免费观看30秒视频久久| 一区二区三区国产精华| 午夜精品久久久久久久久久久久久 | 亚洲高清久久网| 91久久精品国产91性色| 一区二区三区日韩精品| 欧美中文字幕第一页| 嫩草伊人久久精品少妇av杨幂| 欧美精品麻豆| 国产情人综合久久777777| 亚洲国产成人精品视频| 亚洲在线观看视频| 欧美大片在线观看| 亚洲一区在线看| 欧美69视频| 国产日韩在线视频| 日韩视频在线你懂得| 亚欧美中日韩视频| 欧美大尺度在线观看| 亚洲免费在线观看| 美女精品网站| 国产欧美日韩亚洲| 亚洲午夜一区| 亚洲国产成人高清精品| 久久爱www.| 国产精品欧美精品| 亚洲黄网站在线观看| 欧美专区第一页| 一区二区三区视频在线播放| 免费一级欧美片在线播放| 国产午夜精品久久久久久免费视| 亚洲天堂av在线免费观看| 亚洲二区精品| 猛干欧美女孩| 亚洲第一视频| 老色鬼久久亚洲一区二区| 亚洲一区二区影院| 国产精品分类| 亚洲自拍高清| 日韩一级免费| 欧美日韩亚洲一区在线观看| 亚洲精品乱码久久久久久黑人| 久久久久国产精品一区二区| 亚洲视频在线一区| 国产精品激情| 性色av香蕉一区二区| av成人黄色| 欧美精品一区二区视频| 亚洲免费精彩视频| 91久久精品美女高潮| 久久在线91| 亚洲国产欧美另类丝袜| 欧美福利网址| 久久久亚洲高清| 影音先锋中文字幕一区二区| 欧美亚洲一区在线| 亚洲欧美中文日韩在线| 欧美不卡高清| 久久国产欧美| 久久国产手机看片| 亚洲乱码精品一二三四区日韩在线 | 欧美91精品| 国产一区二区三区精品欧美日韩一区二区三区 | 国产深夜精品福利| 久久精品男女| 久久精品国语| 亚洲电影免费在线观看| 久久精品日产第一区二区| 一区二区三区回区在观看免费视频| 久久亚洲美女| 亚洲精品午夜精品| 一区二区国产日产| 国产一区在线播放| 亚洲区欧美区| 国产日韩综合一区二区性色av| 久久久久久色| 欧美国产视频日韩| 亚洲在线电影| 久久人人97超碰人人澡爱香蕉| 亚洲欧洲三级| 亚洲一区亚洲| 亚洲区一区二区三区| 中日韩美女免费视频网址在线观看 | 亚洲精品国产精品国自产在线| 午夜精品www| 久久精品免费电影| 欧美三级欧美一级| 久久久久国产一区二区三区| 欧美综合第一页| 欧美日韩国产美| 欧美视频精品在线观看| 亚洲精品美女久久7777777| 一区在线电影| 影音先锋亚洲电影| 在线看片一区| 久久高清国产| 久久精品30| 亚洲香蕉网站| 欧美一区二区三区免费看| 亚洲欧美日韩精品久久| 噜噜爱69成人精品| 99re成人精品视频| 欧美性大战久久久久久久蜜臀| 亚洲视频每日更新| 销魂美女一区二区三区视频在线| 欧美激情一区二区三区全黄| 国产日韩欧美在线一区| 亚洲国产精品999| 亚洲视频在线看| 美日韩精品免费| 亚洲电影免费观看高清完整版在线| 亚洲婷婷在线| 欧美精品国产精品日韩精品| 亚洲国产视频a| 欧美一区二区三区另类| 久久中文字幕一区二区三区| 欧美亚韩一区| 日韩亚洲综合在线| 亚洲国产精品毛片| 久久久久一区| 老司机免费视频久久| 一区三区视频| 欧美中文字幕视频在线观看| 亚洲国产导航| 欧美激情aⅴ一区二区三区 | 久久精品首页| 欧美性久久久| 伊人夜夜躁av伊人久久| 亚洲最黄网站| 免费在线观看一区二区| 亚洲综合不卡| 国产亚洲va综合人人澡精品| 欧美怡红院视频| 香蕉久久夜色精品| 日韩亚洲欧美综合| 日韩午夜三级在线| 亚洲线精品一区二区三区八戒| 亚洲一区二区影院| 亚洲精品黄网在线观看| 一区二区激情视频| 国产一区二区三区精品久久久| 欧美电影在线| 亚洲免费福利视频| 一二三区精品福利视频| 亚洲四色影视在线观看| 亚洲天天影视| 黄色在线一区| 国产精品综合视频| 亚洲尤物视频在线| 一区二区三区毛片| 国产婷婷色一区二区三区四区| 亚洲另类自拍| 久久人人爽国产| 欧美精品色一区二区三区| 国产日韩久久| av成人毛片| 亚洲精品麻豆| 久久亚洲电影| 久久久久久综合网天天| 欧美午夜三级| 亚洲精品乱码久久久久久日本蜜臀| 国产日韩av高清| 宅男噜噜噜66一区二区66| 亚洲精品国产精品久久清纯直播| 久久国产直播| 久久久亚洲欧洲日产国码αv| 国产精品成人一区二区三区夜夜夜|