private Node constructTree(int preorder[],int postorder[],int low,int high,int index){

        if(low > high || index >= preorder.length-1){
            Node node = new Node();
            node.data = preorder[index];
            return node;
        }
        
        Node node = new Node();
        node.data = preorder[index];
        int i=0;
        for(i=low; i <= high; i++){
            if(preorder[index+1] == postorder[i]){
                break;
            }
        }
        node.left = constructTree(preorder, postorder, low, i-1, index+1);
        node.right = constructTree(preorder, postorder, i+1, high-1, index + i-low+2);
        return node;
    }
http://www.geeksforgeeks.org/full-and-complete-binary-tree-from-given-preorder-and-postorder-traversals/
Full tree is a tree with all nodes with either 0 or 2 child. Never has 1 child.
Test cases
Empty tree
Tree with big on left side
Tree with big on right side
src/com/interview/tree/ConstructFullTreeFromPreOrderPostOrder.java