TreeNode buildTreeAux(int[] inorder, int[] postorder, int is, int ie,
			int ps, int pe) {
		TreeNode root = new TreeNode(postorder[pe]);
		int i = is;
		while (inorder[i] != postorder[pe]) {
			i++;
		}
		if (i - 1 >= is)
			root.left = buildTreeAux(inorder, postorder, is, i - 1, ps, ps
					+ (i - is - 1));
		if (i + 1 <= ie)
			root.right = buildTreeAux(inorder, postorder, i + 1, ie, ps
					+ (i - is), pe - 1);
		return root;

	}