java实现二叉树的递归方式遍历
来源:互联网 发布:ubuntu php模块 编辑:程序博客网 时间:2024/04/30 05:32
刚刚看了一下数据结构,有了些兴致实现一下Java中的二叉树。因为二叉树涉及到的主要知识是二叉树的遍历,所以这里简单实现一下。
先定义一下二叉树的节点类如下:
class Tree{ //定义一颗二叉树 Tree leftTree;//定义左子树 Tree rightTree;//定义右子树 Object data;//定义存储的数据 Tree(){} //省略getter/setter/private....别这样}
接下来写主类
public class MyTree{ private Tree root;//定义一个根树root public void list(Tree root) { if(root == null) { //根节点为空就不遍历了,因为采用递归,并不总是是根节点root,名称而已 return; }else { //根据以下三者的顺序可以组成前序,中序和后序遍历 //这里是前序遍历 System.out.print(root.data +", "); if(root.leftTree != null){ list(root.leftTree); } if(root.rightTree !=null) { list(root.rightTree); } } //主要代码就是这段递归,非递归实现现在没有思路 } public static void main(String argc[]) { MyTree mt = new MyTree(); //为这颗树添加内容 Tree t1 = new Tree(); t1.data = "a"; Tree t2 = new Tree(); t2.data = "b"; Tree t3 = new Tree(); t3.data = "c"; Tree t4 = new Tree(); t4.data = "d"; Tree t5 = new Tree(); t5.data = "e"; Tree t6 = new Tree(); t6.data = "f"; Tree t7 = new Tree(); t7.data = "g"; //为树与树之间创建关联 t1.leftTree = t2; t1.rightTree = t5; t2.leftTree = t3; t2.rightTree = t4; t5.rightTree =t6; t6.leftTree = t7; //开始从根节点遍历 mt.list(t1); }}
输出结果:
Compiling MyTree.java......------------a, b, c, d, e, f, g,
end:
如果有其它想要实现的数据结构,欢迎一起讨论与实现
0 0
- java实现二叉树的递归方式遍历
- java使用递归,非递归方式实现二叉树的三种常见遍历方式
- java使用递归,非递归方式实现二叉树的三种常见遍历方式
- Java方式实现二叉树的前中后序遍历的递归及非递归算法
- 二叉树的递归遍历----java实现
- Java实现二叉树的递归与非递归遍历
- Java实现二叉树的创建、递归/非递归遍历
- Java实现二叉树的递归、非递归遍历
- 二叉树三种遍历方式的递归与非递归实现
- 算法:二叉树的先序遍历、中序遍历、后序遍历(递归及非递归方式)的java代码实现
- 二叉树的三种非递归遍历方式。
- 二叉树的遍历方式(递归)
- 二叉树的遍历方式(递归)
- 【Java】二叉树三种遍历的递归实现
- 二叉树的三种遍历方式的递归实现和非递归实现
- Java实现的二叉树的非递归遍历
- java实现二叉树的三种遍历算法(递归)
- java实现二叉树的非递归遍历
- 第三章:手工完全恢复
- 第四章:手工不完全恢复
- 时钟滴答定时器(sysclk)用法详解
- Medium 236题 Lowest Common Ancestor of a Binary Tree
- OpenCV3.0 + vs2013 +win8
- java实现二叉树的递归方式遍历
- 23. Merge k Sorted Lists
- 【51单片机学习过程记录】8 中断 之定时计数器0的使用
- 怎么修改TOMCAT的默认主页为你自己项目的主页
- 勾股定理一日一证连载121
- Medium 28题 Implement strStr()
- 求生之路指令
- L4D1-说明_新图使用教程
- Closest Binary Search Tree Value II