java 树形结构
来源:互联网 发布:粒子群算法详解和实例 编辑:程序博客网 时间:2024/05/18 00:18
import java.util.HashMap;import java.util.Map;import java.util.Set;public class GTree {private int pid;private int id;private String node;private Map<Integer,GTree> child=new HashMap<Integer,GTree>();public GTree(){}public GTree(int pid, int id,String node) {this.pid = pid;this.id=id;this.node = node;}public void add(GTree tree){Integer pid=tree.getPid();/*GTree tree1 =child.get(pid);if(tree1==null){child.put(pid, new GTree(0, 1, "root"));}*/child.put(tree.getId(), tree);}public int getId() {return id;}public void setId(int id) {this.id = id;}public int getPid() {return pid;}public void setPid(int pid) {this.pid = pid;}public void prt(){Set<Integer> set=child.keySet();for (Integer id : set) {System.out.println(child.get(id));}}/** * 求某个节点上级 */public void getParent(int pid){Set<Integer> set=child.keySet();for (Integer id : set) {if(pid==id){System.out.println(pid+"父节点是"+child.get(id));return;}}}/** * 求某个节点所有上级 */public void getAllParent(int pid){Set<Integer> set=child.keySet();for (Integer id : set) {if(pid==id){GTree tree=child.get(id);int _pid=tree.getPid();if(_pid==0){return;}else {System.out.println(pid+"父节点是"+child.get(_pid));getAllParent(_pid);}}}}private Map<Integer,GTree> getchild(){return child;}/** * 求某个节点下级 */public void getchild(int id){GTree tree=child.get(id);Map<Integer,GTree> childMap=tree.getchild();Set<Integer> set=childMap.keySet();for (Integer _id : set) {System.out.println(id+"子节点是"+child.get(_id));}}@Overridepublic String toString() {return "GTree [pid=" + pid + ", id=" + id + ", node=" + node+"]";}public static void main(String[] args) {GTree tree=new GTree();tree.add(new GTree(0,1,"A"));tree.add(new GTree(1,11,"A1"));tree.add(new GTree(1,12,"A2"));tree.add(new GTree(1,13,"A3"));tree.add(new GTree(0,2,"B"));tree.add(new GTree(2,14,"B1"));tree.add(new GTree(2,15,"B2"));tree.add(new GTree(14,141,"B21"));//tree.prt();//tree.getParent(14);//tree.getAllParent(141);tree.getchild(2);}}
0 0
- JAVA树形结构
- java树形结构 算法
- Java 实现树形结构
- Java 树形结构
- java 树形结构
- java树形结构
- Java打印树形结构
- Java树形结构
- java 树形结构 排序问题
- java 递归查询树形结构
- java 递归遍历树形结构
- java拼接树形结构数据
- java树形结构工具类
- java 递归遍历树形结构
- java实现文件夹的遍历(树形结构)
- java树形结构 两种算法
- JAVA组合模式应用-树形结构
- JAVA 树形结构程序事件实例
- cocos2d-x 3.2 |如何实现图片显示和精灵动画 Sprite
- gcc文件后缀及c程序与传统c++常用的头文件与标准c++头文件
- 【记录】s5pv210烧写裸机文件的方法之烧写到SD卡
- Maria 项目接口重构的主要功能及其实现
- 判断出栈顺序的合理性
- java 树形结构
- PHP+MYSQL+Apache
- git rebase 使用体会
- wineqq不显示图盘图标
- 【实践】s5pv210烧写裸机文件的方法之通过U-boot烧写到内存
- Maria 项目自动测试的相关实现
- 【知识点】s5pv210寄存器设置示例
- hdu 4989 Summary三种方法
- 【tyvj1466】最美妙的矩阵