content: package class06;
  
  public class TraversalBinaryTree {
  
  	public static class Node {
  		public int value;
  		public Node left;
  		public Node right;
  
  		public Node(int v) {
  			value = v;
  		}
  	}
  
  	public static void f(Node head) {
  		if (head == null) {
  			return;
  		}
  		// 1
  		f(head.left);
  		// 2
  		f(head.right);
  		// 3
  	}
  
  	// 先序打印所有节点
  	public static void pre(Node head) {
  		if (head == null) {
  			return;
  		}
  		System.out.println(head.value);
  		pre(head.left);
  		pre(head.right);
  	}
  
  	public static void in(Node head) {
  		if (head == null) {
  			return;
  		}
  		in(head.left);
  		System.out.println(head.value);
  		in(head.right);
  	}
  
  	public static void pos(Node head) {
  		if (head == null) {
  			return;
  		}
  		pos(head.left);
  		pos(head.right);
  		System.out.println(head.value);
  	}
  
  	public static void main(String[] args) {
  		Node head = new Node(1);
  		head.left = new Node(2);
  		head.right = new Node(3);
  		head.left.left = new Node(4);
  		head.left.right = new Node(5);
  		head.right.left = new Node(6);
  		head.right.right = new Node(7);
  
  		pre(head);
  		System.out.println("========");
  		in(head);
  		System.out.println("========");
  		pos(head);
  		System.out.println("========");
  
  	}
  
  }
  