黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 實現Java遞歸樹的代碼

實現Java遞歸樹的代碼

更新時間:2022-12-29 11:12:47 來源:動力節點 瀏覽1451次

實現Java遞歸樹的代碼是什么?動力節點小編來告訴大家。 

package cn.com.showinfo.util;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.alibaba.fastjson.JSON;
/**
 * @author lele
 * 2018-10-19
 */
public class TreeTest {   
     private Integer id ;
        private Integer pId ;
        private String name;
        private List<TreeTest> children;
        public TreeTest() {            
        }                
        public TreeTest(Integer id, Integer pId, String name) {
            super();
            this.id = id;
            this.pId = pId;
            this.name = name;
        }
        public Integer getId() {
            return id;
        }
        public void setId(Integer id) {
            this.id = id;
        }
        public Integer getpId() {
            return pId;
        }
        public void setpId(Integer pId) {
            this.pId = pId;
        }
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }                
        public List<TreeTest> getChildren() {
            return children;
        }
        public void setChildren(List<TreeTest> children) {
            this.children = children;
        }                
        @Override
        public String toString() {
            return "TreeTest [id=" + id + ", pId=" + pId + ", name=" + name
                    + ", children=" + children + "]";
        }               
        //測試數據        
        public static void main(String[] args) {
            Map<Integer,TreeTest> map = new HashMap<Integer,TreeTest>();           
            TreeTest terr1 = new TreeTest(1,0,"一級父節點");
            TreeTest terr2 = new TreeTest(2,1,"一級1子節點");
            TreeTest terr3 = new TreeTest(3,2,"一級2子節點");
            TreeTest terr4 = new TreeTest(4,0,"二級父節點");
            TreeTest terr5 = new TreeTest(5,4,"二級1子節點");
            TreeTest terr6 = new TreeTest(6,4,"二級1子節點2");
            TreeTest terr7 = new TreeTest(7,3,"一級3子節點");
            TreeTest terr8 = new TreeTest(8,5,"二級2子節點");
            map.put(terr1.getId(), terr1);
            map.put(terr2.getId(), terr2);
            map.put(terr3.getId(), terr3);
            map.put(terr4.getId(), terr4);
            map.put(terr5.getId(), terr5);
            map.put(terr6.getId(), terr6);
            map.put(terr7.getId(), terr7);
            map.put(terr8.getId(), terr8);
            List<TreeTest> li =  getChildren(map,0,1);            
            System.out.println(JSON.toJSON(li));
        }       
        public static List<TreeTest> getChildren(Map<Integer,TreeTest> trees,Integer id,Integer leve){
            List<TreeTest> list = new ArrayList<TreeTest>();        
            for (TreeTest tree : trees.values()) {
                if(id == tree.getpId()){            
                    System.out.println("-遞歸" + tree.toString());
                    List<TreeTest> chidren = getChildren(trees,tree.getId(),++leve);
                    list.add(tree);//本身
                    tree.setChildren(chidren);//子節點
                    leve--;
                }                
            }
            return list;
        }    
}

 

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 美女1819xxxx | 欧美精品午夜 | 一区二区国产在线播放 | 欧美大片在线观看成人 | 最近的中文字幕大全免费版 | 操干干| 欧美成人午夜 | 怡红院网站 | 毛片免费在线观看网址 | 中文字幕一区二区区免 | 日韩精品一区二三区中文 | 97人人做人人爽人人喊 | 91精品成人 | 日韩欧美视频一区二区在线观看 | 成人a级高清视频在线观看 成人a大片在线观看 | 99色99| 日本欧洲亚洲一区在线观看 | 成年午夜一级毛片视频 | 亚洲国产成人久久一区www妖精 | 韩日免费视频 | 日本三级2021 | 天天天天操 | 草草视频手机在线观看视频 | 麻豆69堂免费视频 | 欧美丝袜制服 | 一区在线播放 | 欧美日韩国产免费一区二区三区 | 一级毛片在线直接观看 | 国产男女爽爽爽免费视频 | 日日爽天天干 | 日日添天天做天天爱 | 日韩一级免费视频 | 五月综合激情网 | h国产在线 | 在线播放一区 | xxxxxx日本护士xxxx | 日日操日日插 | 一个人看的www高清免费 | 国产大片视频免费观看 | 久久理论| 亚洲视频国产视频 |