2011-04-01 41 views
2

我有興趣使用C++或java來實現一個預先設定的B樹,因爲我需要存儲一些路徑表達式,例如//科學家/人/ .../[阿爾伯特愛因斯坦]。實現一個預先定義的B樹

我試過谷歌,但我並不滿意。對此的一些提示將會非常有幫助,或者可以從任何想法開始。但BTree必須存儲在磁盤上。

+0

爲什麼你想要一棵B樹? – MByD 2011-04-01 09:59:57

+1

http://jdbm.sourceforge.net/V1.0/doc/api/jdbm/btree/BTree.html存在。你能用這個嗎? – stefaanv 2011-04-01 10:02:11

+0

http://idlebox.net/2010/stx-cbtreedb/(C++) – ArtemGr 2012-10-09 02:37:19

回答

4

避免使用指針,而是使用基址中的索引。 這樣,您可以簡單地將btree映射到內存中,並將基址與索引一起用作查找。

如果使用windows反而看文件的mapview。

+2

完全是我的想法。但值得一提的是,這些東西存在並被稱爲數據庫。你可以在一個靜態鏈接的c代碼文件中實現這些(sqlite例如) – sehe 2011-04-01 10:00:19

+0

這可能不起作用,因爲B樹中的節點分配之間可能有很多來自動態內存的分配。 – 2011-04-01 17:44:31