技术问答-23 javabean创建一个二叉树,左右两个叶子节点 (1)要求每个结点都有两个叶子,每个叶子节点可以找到父节点也可以找到左右两个子节点 (2)提供2中遍历方法
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了技术问答-23 javabean创建一个二叉树,左右两个叶子节点 (1)要求每个结点都有两个叶子,每个叶子节点可以找到父节点也可以找到左右两个子节点 (2)提供2中遍历方法,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2127字,纯文字阅读大概需要4分钟。
内容图文
javabean创建一个二叉树,左右两个叶子节点
(1)要求每个结点都有两个叶子,每个叶子节点可以找到父节点也可以找到左右两个子节点
(2)提供2中遍历方法
随便画了一个二叉树
前序遍历: 根结点 —> 左子树 —> 右子树
遍历上边的树:1,5,4,3,2,8,7,9,6
(1) 根节点 1
(2)遍历1的左树 根节点 5
(3)遍历5的左树 根节点4 无左右树
(4)遍历5的右数 根节点3
(5)遍历3的左树 2 无左右树
(6)遍历3的右树 8 无左右树
(7)遍历1的右树 根节点7
(8)遍历7的左树 根节点9 没有左右树
(9)遍历7的右树 根节点6 没有左右树
(10)总的顺序是:1,5,4,3,2,8,7,8,6
中序遍历:左子树—> 根结点 —> 右子树
遍历上边的树:4,5,2,3,8,1,9,7,6
后序遍历:左子树 —> 右子树 —> 根结点
遍历上边的树:4,2,8,3,5,9,6,7,1
package com;/** * 二叉树实体类 * * @author Administrator * */public class Node {// 节点数据 String value;// 左树 Node left;// 右树 Node right;// 父节点 Node parent;// 构造 构建根节点Node(String value) {this.value = value;this.left = null;this.right = null;this.parent = null;}// 设置左树public Node setLeft(Node left) { left.parent = this;this.left = left;return left;}// 设置右树public Node setRight(Node right) { right.parent = this;this.right = right;return right;}// 前序遍历 根节点->左子树->右子数public void preOrderTraversal(Node node) {if (node == null) {return;} System.out.println(node.value);preOrderTraversal(node.left);preOrderTraversal(node.right);}// 中序遍历 左子树->根节点->右子树public void sequentialTraversal(Node node) {if (node == null) {return;}sequentialTraversal(node.left); System.out.println(node.value);sequentialTraversal(node.right);}// 后序遍历 左子树->右子数->根节点public void postorderTraversal(Node node) {if (node == null) {return;}postorderTraversal(node.left);postorderTraversal(node.right); System.out.println(node.value);}public static void main(String[] args) {//手动构建上边例子的二叉树 Node node = new Node("1"); node.setLeft(new Node("5")).setLeft(new Node("4")); node.left.setRight(new Node("3")).setLeft(new Node("2")); node.left.right.setRight(new Node("8")); node.setRight(new Node("7")).setLeft(new Node("9")); node.right.setRight(new Node("6"));// node.preOrderTraversal(node);// node.sequentialTraversal(node); node.postorderTraversal(node);}}
内容总结
以上是互联网集市为您收集整理的技术问答-23 javabean创建一个二叉树,左右两个叶子节点 (1)要求每个结点都有两个叶子,每个叶子节点可以找到父节点也可以找到左右两个子节点 (2)提供2中遍历方法全部内容,希望文章能够帮你解决技术问答-23 javabean创建一个二叉树,左右两个叶子节点 (1)要求每个结点都有两个叶子,每个叶子节点可以找到父节点也可以找到左右两个子节点 (2)提供2中遍历方法所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。