长沙java培训
达内长沙芙蓉路中心

18487146383

热门课程

长沙java培训分享: 中序遍历

  • 时间:2015-10-23
  • 发布:达内科技
  • 来源:长沙达内

很多同学对于写程序的逻辑都是很清晰的,但是对于程序该怎么写就开始茫然不知所措了,现在长沙java培训为大家讲解一下中序遍历的逻辑和程序。

中序遍历:首先遍历左子树,然后访问根节点,最后遍历右子树。在遍历左右子树时,仍然先遍历左子树,再访问根节点,最后遍历右子树。

长沙java培训_中序遍历

若二叉树为空则结束返回

否则:

1)中序遍历左子树

2)访问根节点

3)中序遍历右子树

遍历左右子树时仍然采用中序遍历方法 已知前序遍历和后序遍历,不能确定唯一的中序遍历

package com.slxy.xiawu;

publicclass ZhongXu {

privatestaticclass TreeNode{

public String value;

public TreeNode left;

public TreeNode right;

TreeNode(String x){

value=x;

}

}

publicstaticvoid midOrder(TreeNode tree){

if(tree==null)return;

midOrder(tree.left);

System.out.print(tree.value+" ");

midOrder(tree.right);

}

publicstaticvoid main(String[] args) {

TreeNode tree = new TreeNode("A");

tree.left=new TreeNode("B");

tree.right=new TreeNode("C");

tree.left.left=new TreeNode("D");

tree.left.right=new TreeNode("E");

tree.right.left=new TreeNode("F");

tree.right.right=new TreeNode("G");

tree.left.left.left=new TreeNode("H");

tree.left.left.right=new TreeNode("I");

tree.left.right.left=new TreeNode("J");

tree.left.right.right=new TreeNode("K");

tree.right.left.left= new TreeNode("L");

tree.right.left.right=new TreeNode("M");

tree.right.right.left=new TreeNode("N");

tree.right.right.right=new TreeNode("O");

tree.left.left.left.left=new TreeNode("P");

tree.left.left.left.right=new TreeNode("Q");

midOrder(tree);

}

}

写程序的可以有多种方法实现一个功能,但是代码的精简程度却不一样,长沙java培训长期分享程序算法逻辑,欢迎关注,如需更多学习,我们开设java培训班,可先试听如果适合再报班!

上一篇:Java语言你值得学习!
下一篇:长沙java培训分享:java两种算法实现后序遍历

长沙Java培训:Oracle Java首席架构师辟谣

长沙Java培训:Java三大分支JavaEE JavaSE JavaME

长沙Java培训:掌握Java开发中5个异常处理的方法

《掌握Timer类的简易用法》长沙达内Java培训

选择城市和中心
贵州省

广西省

海南省

扫一扫

了解更多干货