Java实现二叉树,以及先序、中序、后序遍历算法的实现
来源:互联网 发布:java框架电子书 编辑:程序博客网 时间:2024/06/01 09:15
1.Node类
public class Node {int val;Node left;Node right;Node(int val){this.val=val;}}
2.BinaryNode类
import java.util.ArrayList;public class BinaryTree {Node root;public BinaryTree(){}public void setRoot(Node root) {this.root=root;}boolean contain(Node root,int x) {boolean res=false;if(root.val==x) {res=true;return res;}if(root.left!=null) {res=contain(root.left,x);if(res==true)return res;}if(root.right!=null) {res=contain(root.right,x);if(res==true)return res;}return res;}/** * 树的先序遍历结果 * @return */ public ArrayList<Integer> preTraversal(Node node) { ArrayList<Integer> list = new ArrayList<Integer>(); if(node==null) { return list; } list.add(node.val); list.addAll(preTraversal(node.left)); list.addAll(preTraversal(node.right)); return list; } /** * 树的中序遍历结果 * @return */ public ArrayList<Integer> midTraversal(Node node) { ArrayList<Integer> list = new ArrayList<Integer>(); if(node==null) { return list; } list.addAll(midTraversal(node.left)); list.add(node.val); list.addAll(midTraversal(node.right)); return list; }/** * 树的后序遍历结果 * @return */ public ArrayList<Integer> afterTraversal(Node node) { ArrayList<Integer> list = new ArrayList<Integer>(); if(node==null) { return list; } list.addAll(afterTraversal(node.left)); list.addAll(afterTraversal(node.right)); list.add(node.val); return list; } }
阅读全文
1 0
- Java实现二叉树,以及先序、中序、后序遍历算法的实现
- java实现二叉树,以及二叉树的遍历和先序和后序求解
- java实现二叉树的先序遍历,中序遍历,后序遍历
- 实现二叉树的先序遍历、中序遍历、后序遍历的递归非递归算法以及层次遍历算法
- 二叉树建立以及先序、中序、后序、层次遍历(JAVA 实现)
- 二叉树遍历的非递归算法(先序、中序、后序)代码实现
- 二叉树遍历算法的实现(先序、中序、后序)
- 建立二叉树,实现二叉树的先序遍历、中序和后序遍历的非递归算法
- java实现二叉树的构建以及三种遍历方法(先序遍历,中序遍历,后续遍历)
- 二叉树的创建,先序、中序、后序遍历的递归实现以及层序遍历
- java实现二叉树的先序、中序、后序遍历
- Java实现二叉树的先序、中序、后序、层级遍历
- Java实现二叉树的先序、中序、后序、层级遍历
- 二叉树的先序、中序、后序的递归及非递归实现,以及层次遍历的实现:
- 算法:二叉树的先序遍历、中序遍历、后序遍历(递归及非递归方式)的java代码实现
- C实现二叉树的先序遍历,中序遍历,后序遍历
- c语言实现二叉树的先序遍历,中序遍历,后序遍历
- 二叉树T 的先序遍历、中序遍历、后序遍历(递归实现)
- MyBatis批量插入数据
- 获取元素的偏移量offset
- Linux入门4
- 爬虫技术(05)神箭手爬虫回调函数
- sqlServer存储过程查询语句
- Java实现二叉树,以及先序、中序、后序遍历算法的实现
- tensorflow variable的保存和加载
- mysql性能优化
- Web项目中 .classpath、.mymetadata、.project文件的作用
- Banner 图片无限轮播
- 《Machine Learning》第二讲 线性回归与梯度下降
- 遍历文件夹
- Java对List的常用操作
- Linux下安装及简单使用nmap