java 实践源码--二叉树
来源:互联网 发布:aes数据加密 编辑:程序博客网 时间:2024/06/07 11:04
package tree;public class BinaryTree {public void printNode(TreeNode node) { System.out.print(node.getData()); } class TreeNode { private String data; private TreeNode leftNode; private TreeNode rightNode; public TreeNode(String data, TreeNode leftNode, TreeNode rightNode) { this.data = data; this.leftNode = leftNode; this.rightNode = rightNode; } public String getData() { return data; } public void setData(String data) { this.data = data; } public TreeNode getLeftNode() { return leftNode; } public void setLeftNode(TreeNode leftNode) { this.leftNode = leftNode; } public TreeNode getRightNode() { return rightNode; } public void setRightNode(TreeNode rightNode) { this.rightNode = rightNode; } }public TreeNode init() { TreeNode D = new TreeNode("D", null, null); TreeNode H = new TreeNode("H", null, null); TreeNode I = new TreeNode("I", null, null); TreeNode J = new TreeNode("J", null, null); TreeNode P = new TreeNode("P", null, null); TreeNode G = new TreeNode("G", P, null); TreeNode F = new TreeNode("F", null, J); TreeNode E = new TreeNode("E", H, I); TreeNode B = new TreeNode("B", D, E); TreeNode C = new TreeNode("C", F, G); TreeNode A = new TreeNode("A", B, C); return A; } public void xianIterator(TreeNode node) { this.printNode(node); if (node.getLeftNode() != null) { this.xianIterator(node.getLeftNode()); } if (node.getRightNode() != null) { this.xianIterator(node.getRightNode()); } } public void zhongIterator(TreeNode node) { if (node.getLeftNode() != null) { this.zhongIterator(node.getLeftNode()); } this.printNode(node); if (node.getRightNode() != null) { this.zhongIterator(node.getRightNode()); } } public void houIterator(TreeNode node) { if (node.getLeftNode() != null) { this.houIterator(node.getLeftNode()); } if (node.getRightNode() != null) { this.houIterator(node.getRightNode()); } this.printNode(node); } }
测试类
package tree;import tree.BinaryTree.TreeNode;import tree.BinaryTree;public class test {public static void main(String[] args) { BinaryTree tree = new BinaryTree(); TreeNode node = tree.init(); // 先序遍历。。。。。。。 System.out.println("**************************"); System.out.println("先序遍历。。。。。。。"); tree.xianIterator(node); System.out.println(""); // 中序遍历。。。。。。。 System.out.println("**************************"); System.out.println("中序遍历。。。。。。。"); tree.zhongIterator(node); System.out.println(""); // 后续遍历。。。。。。。 System.out.println("**************************"); System.out.println("后序遍历。。。。。。。"); tree.houIterator(node); } }
0 0
- java 实践源码--二叉树
- java-二叉树源码
- java实践源码--哈弗曼树
- 二叉树编程实践
- JAVA实践自平衡二叉树(AVL树)
- 二叉树的实践应用
- 二叉树理解与实践
- 哈夫曼二叉树源码
- java 实践源码--并查集
- 二分搜索的java源码实践
- 【实践】java.lang.Integer源码分析
- 【实践】java.lang.Integer源码分析 -- parseInt
- 【实践】java.lang.Integer源码分析 -- valueOf
- 二叉树的C++源码
- 【深入理解数据结构】二叉树实践
- 数据结构学习之二叉树(实践篇)
- 数据结构学习之二叉树(实践篇)
- 数据结构之二叉树实践练习
- 文本框添加keydown事件
- 不落地数据导入导出
- 乱七八糟的东西写给自己看的
- HDU 2031
- LeetCode题解:Single Number最优解法
- java 实践源码--二叉树
- android fragment_main.xml 注意问题
- CSS设置字体和文字样式
- HGE引擎的粒子系统
- 第十二周项目二 OJ平台-刑警的射击成绩
- java实践源码--哈弗曼树
- JAVA学习笔记---简易计算器完整功能
- Delphi中ShellExecute的妙用
- java接口 实例化