Java自定义树形结构

Java自定义树形结构

为什么80%的码农都做不了架构师?>>>

树形结构

Java

package com.zyl.comm;

import java.util.ArrayList;

import java.util.List;

public class Node {

private List> children = new ArrayList<>();

private Node parent;

private T data;

public Node(T data) {

this.data = data;

}

public Node(Node parent, T data) {

this.parent = parent;

this.data = data;

}

public List> getChildren() {

return children;

}

public void setParent(Node parent) {

parent.addChild(this);

this.parent = parent;

}

public void addChild(T data) {

Node child = new Node(data);

child.setParent(this);

this.children.add(child);

}

public void addChild(Node child) {

child.setParent(this);

this.children.add(child);

}

public T getData() {

return data;

}

public void setData(T data) {

this.data = data;

}

public boolean isRoot() {

return (this.parent == null);

}

public boolean isLeaf() {

return this.children.size() == 0;

}

public void removeParent() {

this.parent = null;

}

public int getDepth(){

if (parent == null){

return 0;

} else {

return parent.getDepth() + 1;

}

}

}

参考

Tree implementation in Java (root, parents and children)

转载于:https://my.oschina.net/fxtxz2/blog/2980954

Java自定义树形结构相关教程

java servlet笔记3

java servlet笔记3 Servlet 表单数据 ? 浏览器使用两种方法可将这些信息传递到 Web 服务器,分别为 GET 方法和 POST 方法。 GRT方法 ? GET 方法向页面请求发送已编码的用户信息。页面和已编码的信息中间用 ? 字符分隔 http://www.test.com/hello?key1=value1k

java servlet笔记2

java servlet笔记2 Servlet 生命周期 ? Servlet 生命周期可被定义为从创建直到毁灭的整个过程。以下是 Servlet 遵循的过程: Servlet 通过调用 init () 方法进行初始化。 Servlet 调用 service() 方法来处理客户端的请求。 Servlet 通过调用 destroy() 方法终

JAVA中配置JDK环境

JAVA中配置JDK环境 为什么80%的码农都做不了架构师? 学习JAVA的人要知道,JDK安装后还需要配置,接下来要为大家分享一下如何在win7系统配置JDK环境!!! 工具/原料 JDK,有32位和64位的,根据个人电脑配置下载相关的版本 百度经验:jingyan.baidu.com 方法/

java Servlet笔记7

java Servlet笔记7 Servlet 编写过滤器 ? Servlet 过滤器可以动态地拦截请求和响应,以变换或使用包含在请求或响应中的信息。 ? 可以将一个或多个 Servlet 过滤器附加到一个 Servlet 或一组 Servlet。Servlet 过滤器也可以附加到 JavaServer Pages (JSP) 文件

Java - 【异常处理】try...catch...

Java - 【异常处理】try...catch... 常见异常 java.lang.NullPointerException java.lang.ArrayIndexOutOfBoundsException java.io.NotSerializableException java.io.InvalidClassException java.lang.CloneNotSupportedException 异常继承关系 异常处理基本

【LeetCode(Java) - 744】寻找比目标字母大的最小字母

【LeetCode(Java) - 744】寻找比目标字母大的最小字母 文章目录 1、题目描述 2、解题思路 3、解题代码 1、题目描述 2、解题思路 ??由于字符列表有序,且找出比目标字母大的最小字母,很明显采用二分查找。 ??区间呈左开右闭形式。 ??当中间字符小于等于目标

JAVA基础 面向对象(四) 代码块 static 抽象类 内部类

JAVA基础 面向对象(四) 代码块 static 抽象类 内部类 一、static 关键字引入 static关键字声明的属性和方法是类自己的,所有类实例化的对象,都共享这些static属性和方法。 static可用于修饰:属性、方法、代码块、内部类 1.1 static修饰属性 static修饰后

【JAVA】字母菱形

【JAVA】字母菱形 输入描述 输入一个大写字母与一个整数n,1=n=26; 输出描述 输出如下高度为2n-1的菱形; 注意:A的下一个字母是B,Z的下一个字母是A 样例输入 R 12 样例输出 思路 图形由字母和空格组成,而且是由上下两个三角形构成,用一个数组存放字母,用

JAVA定义一个树形的结构_Java自定义树形结构相关推荐

  1. java定义一个类显示没有_Java 中的每个类都至少有一个构造方法,一个类中如果没有定义构造方法,系统会自动为这个类创建一个默认的构造方法。_学小易找答案...

    [单选题]关于 Java 语言叙述错误的是( ). [判断题]类中 static 修饰的变量或方法,可以使用类名或对象的引用变量访问. [命名题]命名下列化合物, [单选题]急性胰腺炎的主要临床表现是 ...

  2. java定义一个矩阵的类_java写入一个矩阵,如何编程求该矩阵的秩

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 Fraction.java如下:(这个是网上找来的,处理分数的类) // 支持查找功能的分数类 class Fraction implements Com ...

  3. java定义一个点_JAVA 定义一个Point类 它的对象是指一个平面上的点(x,y),在定义Point类中要定义它的三个构造函数...

    JAVA 定义一个Point类 它的对象是指一个平面上的点(x,y),在定义Point类中要定义它的三个构造函数 JAVA 定义一个Point类 它的对象是指一个平面上的点(x,y),在定义Point ...

  4. java定义一个方法,返回一个整数数组的元素平均值

    java定义一个方法,返回一个整数数组的元素平均值 /*** 定义一个方法* 返回一个整数数组的元素平均值*/ public class Test25 {public static double av ...

  5. java定义一个方法,返回一个整数数组的元素最小值

    java定义一个方法,返回一个整数数组的元素最小值 /*** 定义一个方法* 返回一个整数数组的元素最小值*/ public class Test24 {public static int minAr ...

  6. java定义一个方法,返回整数数组的元素最大值

    java定义一个方法,返回整数数组的元素最大值 /*** 定义一个方法* 返回整数数组的元素最大值*/ public class Test23 {public static int maxArray( ...

  7. java定义一个方法,返回一个整数数组的和

    java定义一个方法,返回一个整数数组的和 /*** 定义一个方法* 返回一个整数数组的和*/ public class Test22 {//定义数组public static int getArra ...

  8. java定义一个方法,返回一个浮点数保留两位小数,考虑四舍五入的结果

    java定义一个方法,返回一个浮点数保留两位小数,考虑四舍五入的结果 /*** 定义一个方法* 返回一个浮点数保留两位小数* 考虑四舍五入的结果*/ public class Test21 {publ ...

  9. java定义一个方法,返回a的b次方

    java定义一个方法,返回a的b次方 /*** 定义一个方法* 返回a的b次方*/ public class Test20 {public static long pow(int a,int b){l ...

最新文章

  1. Solr debugQuery使用体会
  2. STC89C52单片机 数码管动态显示
  3. C#向C++编写的DLL传递字符串参数的办法
  4. python argparse type_python argparse(参数解析模块)
  5. 使用Log4j - Java异常处理
  6. 如何在 ASP.Net Core 使用 内存缓存
  7. java混合分页_坑,MySQL中 order by 与 limit 混用,分页会出现问题!
  8. Python高级——数据库编程(Mysql)
  9. java属性绑定_java基础:10.1 Java FX与属性绑定
  10. 记一次线程池任务执行异常
  11. 根据某一个字段查询但不是主键 sql该怎么写_为什么我使用了索引,查询还是慢?...
  12. MongoDB学习(一)Centos6.5下安装mongoDB
  13. VS 2019 打包安装应用
  14. 地磅15针到9针数据线连接串口数据采集方法
  15. 两个小米路由器mini无线桥接
  16. 蓝桥杯 历年试题 矩阵翻硬币
  17. 《人工智能的未来》摘录
  18. 第8章 - 异构系统的协同控制及最优控制 --> 最优控制
  19. 【华人学者风采】张瑞 新加坡国立大学
  20. 如何提高自己的想象力和思考力?

热门文章

  1. 剑指offer面试题2:实现单例模式
  2. 快手主播怎么引流?直播带货将面向多样化发展
  3. 计算机网断IP修改,教你怎样更改电脑以太网的IP网段,网络设备必需品
  4. java 快递100_使用快递100 查询链接实现快速查询的示例
  5. python web py入门-1-web.py简介和安装
  6. C++:函数指针调用方法
  7. 计算机辅助地理教学的内容,信息技术辅助地理教学
  8. 计算机音乐文爱图片,CG/贺敬轩《文爱》[FLAC/MP3-320K]
  9. POST http://localhost:8080/XXX/XXX 400 (Bad Request)
  10. pptpd mysql_pptpd+freeradius+mysql安装步骤