public class threelinktree
public treenode(object data, treenode left, treenode right,
treenode parent)
public treenode()
} // root
private treenode root;
// 預設方式建立二叉樹
public threelinktree()
// 指定元素建立二叉樹
public threelinktree(e data)
// 判定二叉樹是否為空
public boolean empty()
// 獲取根節點
public treenode getroot() else
} // 獲取指定節點的左節點
public e leftchild(treenode node)
return node.left == null ? null : (e) node.left.data;
} // 獲取指定節點的右節點
public e rightchild(treenode node)
return node.right == null ? null : (e) node.right.data;
} // 獲取指定節點的父節點
public e parent(treenode node)
return (e) node.parent.data;
} // 向二叉樹中新增節點
public treenode addnote(treenode parent, e data, boolean isleft)
if (isleft && parent.left != null)
if (!isleft && parent.right != null)
treenode newnode = new treenode(data);
if (isleft) else
newnode.parent = parent;
return newnode;
} // 獲取二叉樹的深度
public int deepin()
// 獲取指定節點的子樹的深度
public int deepin(treenode node)
if (node.left == null && node.right == null) else
}}
二叉樹的儲存結構 二叉鍊錶 三叉鍊錶
p ds 126 1 順序儲存結構 12 3 4 5 6 7 一般二叉樹 12345 0000 67 在最壞的情況下,乙個深度為k且只有k個結點的單支樹 樹中不存在度為2的結點 卻需要長度為2 k 1的一維陣列。2 鏈式儲存結構 二叉樹的儲存結構 一步乙個腳印,堅持 二叉樹的二叉鍊錶表示示意圖 找結...
二叉樹實現類 三叉鍊錶實現
這天氣都能惹上感冒 咳嗽,這幸運。話說回來,複習資料結構,二叉樹算是第乙個要看的,比較簡單,又容易理解。實現方式有很多,大概如下 順序儲存 這種適合於比較完全的二叉樹。子節點則為2i 1和2i 2,父節點則為floor i 1 2 二叉鍊錶 也就是鍊錶實現,三個屬性,值,左子節點指標,右子節點指標。...
二叉鍊錶儲存二叉樹
鏈式儲存結構 二叉樹的鏈式儲存結構是指,用鍊錶來表示一棵二叉樹,即用鏈來指示元素的邏輯關係。其中,data域存放某結點的資料資訊 lchild與rchild分別存放指向左孩子和右孩子的指標,當左孩子或右孩子不存在時,相應指標域值為空 用符號 或null表示 利用這樣的結點結構表示的二叉樹的鏈式儲存結...