前序:根 左 右
中序:左 跟 右
后序:左 右 跟
上代码:
package com.suanfa;
//import javax.swing.tree.TreeNode;
public class TreeNodeTest {
/**
* 前序遍历 根 左 右
* @param node
*/
public static void preOrder(TreeNode node){
if(node==null)
System.out.println("遍历结束!");
else {
System.out.println(node.value);
preOrder(node.left);
preOrder(node.right);
}
}
/**
* 后序遍历
* @param node
*/
public static void postOrder(TreeNode node){
if(node==null)
System.out.println("遍历结束!");
else {
postOrder(node.left);
postOrder(node.right);
System.out.println(node.value);
}
}
/**
* 中序遍历 左 根 右
* @param node
*/
public static void inOrder(TreeNode node){
if(node==null)
System.out.println("遍历结束!");
else {
inOrder(node.left);
System.out.println(node.value);
inOrder(node.right);
}
}
}
class TreeNode{
public TreeNode left;
public TreeNode right;
public int value;
public TreeNode(int value,TreeNode left,TreeNode right){
this.value=value;
this.left=left;
this.right=right;
}
}