黑马程序员技术交流社区
标题:
二叉树排序
[打印本页]
作者:
陌上桑
时间:
2015-6-26 11:47
标题:
二叉树排序
* 步骤:
1、建立二叉树类BinarryTree
* 属性: 根节点 左子树 右子树
* 方法: 判断插入
* 中根遍历
* 2、中根遍历 递归找到叶子节点
*
*
* */
class Test4 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] arr = new int[] { 34, 53, 654, 765, 76, 1, 5, 6, 7, 2, 64, 43, 56 };
// 建立二叉树
BinarryTree tree = new BinarryTree(arr[0]);
for (int i = 0; i < arr.length; i++) {
BinarryTree.insert(tree, arr[i]);
}
//遍历
BinarryTree.order(tree);
}
}
class BinarryTree {
private int data;
private BinarryTree left;
private BinarryTree right;
BinarryTree(int data) { // 对象初始化
// TODO Auto-generated constructor stub
this.data = data;
this.left = null;
this.right = null;
}
// 构造子树
public static void insert(BinarryTree tree, int data) {
if (data <= tree.data) {
if (tree.left == null) {
tree.left = new BinarryTree(data); //建立左节点
} else {
insert(tree.left, data);
}
}
else {
if (tree.right == null) {
tree.right = new BinarryTree(data); //建立有节点
} else {
insert(tree.right, data);
}
}
}
public static void order(BinarryTree tree) {
if (tree != null) {
// 处理左子树和当前对象 【中根遍历】 :先左后中再右
order(tree.left);
System.out.print(tree.data + "-->");
order(tree.right);
}
}
}
作者:
Happe_Sun
时间:
2015-6-26 14:56
学习学习
作者:
怪我咯
时间:
2015-6-26 15:02
悄悄地,拿一个黑马币走人~~~~~~~
作者:
怪我咯
时间:
2015-6-26 15:04
悄悄地,拿一个黑马币走人~~~~~~~
作者:
怪我咯
时间:
2015-6-26 15:05
悄悄地,拿一个黑马币走人~~~~~~~
作者:
怪我咯
时间:
2015-6-26 15:08
悄悄地,拿一个黑马币走人~~~~~~~
作者:
风一样的少年
时间:
2015-6-26 15:36
黑马有你这样的学生才能越来越好,加油
作者:
小龙编程世界
时间:
2015-6-26 17:56
好久没看数据结构了,学习了,谢谢楼主。。。
作者:
小龙编程世界
时间:
2015-6-26 17:58
好久没看数据结构了,学习了,谢谢楼主。。。
作者:
池中月
时间:
2015-6-26 18:21
数据结构方面的的东西;
如果不明白二叉树原理,直接看带吗,感觉好黑呀!
作者:
keto
时间:
2015-6-26 19:44
学习了。。。。。。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2