廣義樹節點類別關鍵屬性與方法實作(續上篇):
public override object Key { get { return this.key; } }
public override uint Degree { get { return this.degree; } }
public override bool IsEmpty() { return false; } // 廣義樹永不為空
public override bool IsLeaf() { return this.degree == 0; }
public override bool Equals(object _obj) {
if (!base.Equals(_obj)) return false;
GeneralTree tmpTree = (GeneralTree)_obj;
if (!Object.Equals(this.treeList, tmpTree.treeList)) return false;
return true;
}
IsEmpty() 恆回傳 false(廣義樹定義無空樹),IsLeaf() 以度數為 0 判斷。Equals 先呼叫基類比較,再比較子樹列表參考相等性。