第一種:子節點搜尋父節點方式
class treeparent
public node(t data)
public node(t data, int parent)
@override
public string tostring()
}// 預設樹的大小
private final int def_tree_size = 100;
private int treesize = 0;
private node nodes;// 記錄樹中所有節點
private int nodenums;// 記錄節點數
// 以指定根節點建立樹
public treeparent(e data)
// 以指定根節點、指定treesize建立樹
public treeparent(e data, int treesize)
// 為指定根節點新增子節點
public void addnode(e data, node parent)}}
// 返回指定節點的索引
private int pos(node node)
// 判斷樹是否為空
public boolean empty()
// 返回根節點
public node root()
// 返回指定節點(非根節點)的父節點
public node parent(node node)
// 返回指定節點的所有子節點
public list> children(node parent)
return list;
}// 返回該樹的深度
public int deep()
if (max < def)
max = def;
}return max;
}public static void main(string args)
第二種實現
/*** 採用子節點鏈表示法記錄樹,每個節點維護乙個子節點鏈,通過子節點鏈記錄該節點的所有子節點
* * @author mk
* * @param
*/class treechild
private static class sonnode
}public static class node
@override
public string tostring()
}private final int def_tree_size = 100;
private int treesize;
private node nodes;// 記錄節點陣列
private int nodenums;// 記錄節點數
// 以指定根節點建立樹
public treechild(e data)
// 以指定根節點指定treesize建立樹
public treechild(e data, int treesize)
// 為指定節點新增子節點
public void addnode(e data, node parent)}}
}// 判斷節點是否為空
public boolean empty()
// 返回根節點
public node root()
// 返回指定節點的(非葉子節點)所有子節點
public list> children(node parent)
return list;
}// 返回指定節點的(非葉子節點)index處的節點
public nodechild(int index, node parent)
*/for (int i = 0; next != null; i++)
return null;
}// 返回該樹的深度
public int deep()
// 遞迴呼叫,每樹的深度為其所有子樹的最大深度+1
private int deep(node node)
return max + 1;
}// 返回節點索引
public int pos(node node)
}
redis hash 結構實現的兩種方式
壓縮列表是 redis 資料型別為 list 和 hash 的底層實現之一。壓縮列表是 redis 為了節約記憶體而開發的,它是由連續記憶體塊組成的順序型資料結構,有點類似於陣列。壓縮列表除了查詢複雜度高的問題,壓縮列表在插入元素時,如果記憶體空間不夠了,壓縮列表還需要重新分配一塊連續的記憶體空間,...
Python實現樹結構的兩種方式
1 實現樹結構的列表方法是 巢狀列表法 這裡把我踩的坑記錄一下 使用巢狀列表法實現樹的基本功能 def binarytree r return r,def insertleft root,newbranch t root.pop 1 iflen t 1 如果左子樹非空,就把原來根節點上的左子樹作為新...
兩種方式實現checkBox readonly功能
今天在做開發的時候遇到了這樣乙個問題 有乙個checkbox選項是不能被改變的。但是checkbox又是沒有readonly屬性的,這個時候我就想到了另外乙個屬性disabled,但是disabled的物件是不能提交到後台的,所以這個又被排除掉了。想了想,只能新增事件來搞定了。於是在checkbox...