2010-05-11 47 views
1

我需要做一個B樹的前序遍歷,以及除其他事項外,打印每個頁面下面的信息(這是同樣的事情,作爲一個節點):幫助與B樹的功課

  1. 的B-樹頁碼
  2. 每個B-Tree頁面指針的值(例如,地址,字節偏移量,RRN)。

我的問題是: 1.你如何計算出字節偏移量?什麼抵消了? 2.不是RRN與頁碼相同嗎?

注意:Btree不是二叉樹。 B樹在每個節點中可以有多個鍵,而具有n個鍵的節點具有n + 1個子指針。

回答

0

字節偏移量可能是記錄從頁面開始的偏移量。

我認爲RRN是相對記錄數。因此,如果記錄是頁面中的第5條記錄,則其RRN將爲5.

您需要知道頁面佈局以瞭解如何解釋頁面/節點中的信息。許多解決方案都可能

你必須寫什麼代碼,以及給你什麼代碼?在我可以得到更多幫助之前,我需要更多地瞭解這項任務要求你做什麼。

+0

B樹創建的代碼被給出,排序。我需要製作一個遍歷B樹的程序,並輸出關於它的信息。該程序可以使用構建B樹時使用的其他文件。程序的要點是讓用戶可以知道Btree的特性。 – neuromancer 2010-05-11 04:45:25

+0

如果RRN引用了頁面中的鍵而不是頁面本身,那麼如果每個頁面有5個鍵,RRN號總是從1到5,還是樹中的每個鍵都有唯一的RRN? – neuromancer 2010-05-11 04:49:30

+1

我不是100%確定RRN是什麼,但我認爲這意味着「相對記錄號碼」。如果是這種情況,那麼如果每個頁面有5個鍵,那麼RRN將始終是1到5之間的一個整數。解釋它的另一種方式是,它唯一地標識和記錄在頁面上。與某人仔細檢查這不是一個壞主意。 如果您給出了Btree的數據結構的代碼,那麼這些文件應該解釋如何從節點中提取信息。 – Jay 2010-05-11 05:43:03