博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java操作二叉树
阅读量:5064 次
发布时间:2019-06-12

本文共 1598 字,大约阅读时间需要 5 分钟。

/*题目:用java语言创建二叉树,完成二叉树的建立和遍历;*/import java.util.Scanner;class  BinaryTreeDemo{	public static void main(String[] args) 	{		Node binaryNode = new Node();		BinaryTree binaryTree = new BinaryTree(binaryNode);		System.out.println("创建二叉树:");		binaryNode = binaryTree.createBinaryTree();		System.out.println("前序遍历:");		binaryTree.PreTree(binaryNode);		System.out.println();		System.out.println("中序遍历");		binaryTree.InOrderTree(binaryNode);		System.out.println();		System.out.println("后序遍历");		binaryTree.PostOrderTree(binaryNode);	}}/*二叉树特点:最多有两个节点*/class Node{	// 存储二叉树节点值	public int data;	// 左节点	public Node leftChild;	// 右节点	public Node rightChild;}class BinaryTree{	//创建一个父节点	private Node rootNode;	public BinaryTree(Node rootNode)	{		this.rootNode = rootNode;	}	//  按前序建立二叉树	public Node createBinaryTree()	{		Node temp = new Node();		Scanner sc = new Scanner(System.in);		int value = sc.nextInt();		if(value == 0)		//输入0表示该节点为空		{			temp = null;		}		else		{			temp.data = value;			temp.leftChild = createBinaryTree();			temp.rightChild = createBinaryTree();		}		return temp;	}	//  前序遍历	public void PreTree(Node t)	{		if(t == null)			return;		System.out.print(t.data + " ");		PreTree(t.leftChild);		PreTree(t.rightChild);	}	//  中序遍历	public void InOrderTree(Node t)	{		if(t == null)			return;		InOrderTree(t.leftChild);		System.out.print(t.data + " ");		InOrderTree(t.rightChild);	}	//  后序遍历	public void PostOrderTree(Node t)	{		if(t == null)			return;		PostOrderTree(t.leftChild);		PostOrderTree(t.rightChild);		System.out.print(t.data + " ");	}}

转载于:https://www.cnblogs.com/dengshiwei/p/4258469.html

你可能感兴趣的文章
redis7--hash set的操作
查看>>
20.字典
查看>>
Python 集合(Set)、字典(Dictionary)
查看>>
oracle用户锁定
查看>>
(转)盒子概念和DiV布局
查看>>
Android快速实现二维码扫描--Zxing
查看>>
获取元素
查看>>
nginx+lighttpd+memcache+mysql配置与调试
查看>>
ubuntu12.04 启动apache2 对.htaccess 的支持
查看>>
proxy写监听方法,实现响应式
查看>>
前端工具----iconfont
查看>>
Azure Site Recovery 通过一键式流程将虚拟机故障转移至 Azure虚拟机
查看>>
Hello China操作系统STM32移植指南(一)
查看>>
cocos2dx CCEditBox
查看>>
VC++2012编程演练数据结构《8》回溯法解决迷宫问题
查看>>
第一阶段冲刺06
查看>>
WIN下修改host文件并立即生效
查看>>
十个免费的 Web 压力测试工具
查看>>
ckeditor 粘贴后去除html标签
查看>>
Mysql DISTINCT问题
查看>>