我碰巧有一個數據庫,其中包含主題,動詞和補語所有可能的組合。樹數據結構和數據
該表看起來像一個Id列映射到我的其他表(主題表,動詞表,補充表)的聯結表。
在我的程序中,我使用樹結構來表示聯結表,並且每個節點因此只是具有Id屬性(subjectId或verbId ...)的對象。
但我不明白,但是在哪裏把Id地圖的實際數據。不過,我覺得我有兩個選擇:
- 使數據的每個節點
- 的屬性使數據節點
在第一種情況下,我做的只是處理加載組合表並創建樹。當我需要數據時,我會根據需要加載它。但爲了跟蹤樹中的數據位置,數據有一個屬性指向它所屬的節點(顯然,爲了避免搜索整棵樹(即使它只是一個O(log( ),另外,我只會在整個程序中處理一個節點,因爲它是到達節點的子節點的一種方便的方式。
在第二種情況下,如果我要實際數據一個節點,我將不得不一次加載所有的數據,然後才消耗它。此外,如果「節點父同胞」使用相同的數據,我仍然需要創建一份數據副本
有沒有一種乾淨的方式來實現我想要做的事情? 下面列出的是什麼我現在有
或者
public class Word : Node{}
我希望,這個問題是非常明顯的。讓我知道你是否需要更多的細節,我會用它更新問題。 謝謝。
哎呀!事實上它不是一棵二叉樹..! :-) – ak3nat0n 2010-12-02 04:48:01