1
我正在嘗試創建一個動畫了BTree的Java小程序。我有代碼來創建樹,但現在我試圖顯示它。我認爲最簡單的方法是按等級打印,但我無法弄清楚。下面的代碼是我的節點的構造函數。此外,如果任何人有更好的建議顯示我的樹,我將不勝感激。通過級別打印BTree
/***********************************************************************
* Class BTNode
* The BTNode is nothing else than a Node in the BTree. This nodes can be
* greater or smaller it depends on the users order.
**/
class BTNode {
int order=0;
int nKey=0; // number of keys stored in node
KeyNode kArray[]; // array where keys are stored
BTNode btnArray[]; // array where references to the next BTNodes is stored
boolean isLeaf; // is the btnode a leaf
BTNode parent; // link to the parent node
/**
* BTNode(int order, BTNode parent);
* Constructor, creats a empty node with the given order and parent
**/
BTNode(int order, BTNode parent) {
this.order = order;
this.parent = parent;
kArray = new KeyNode[2 * order - 1];
btnArray = new BTNode[2 * order];
isLeaf = true;
}
感謝您的想法。我最終使用了兩個隊列(將第一個隊列中的所有節點的子節點添加到第二個隊列,然後反之亦然),這樣我就可以跟蹤需要換行的時間。 – kfeeney 2011-05-05 06:15:04