Created
June 26, 2021 17:11
-
-
Save ntub46010/52b14c392e528b5929bc0b08cdb6ee0f to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class TreeNode<E> { | |
private E value; | |
private TreeNode<E> leftNode; | |
private TreeNode<E> rightNode; | |
public TreeNode(E value) { | |
this.value = value; | |
} | |
public E getValue() { | |
return value; | |
} | |
public TreeNode<E> getLeftNode() { | |
return leftNode; | |
} | |
public void setLeftNode(TreeNode<E> leftNode) { | |
this.leftNode = leftNode; | |
} | |
public TreeNode<E> getRightNode() { | |
return rightNode; | |
} | |
public void setRightNode(TreeNode<E> rightNode) { | |
this.rightNode = rightNode; | |
} | |
public void preOrder() { | |
System.out.print(value); | |
if (leftNode != null) { | |
leftNode.preOrder(); | |
} | |
if (rightNode != null) { | |
rightNode.preOrder(); | |
} | |
} | |
public void inOrder() { | |
if (leftNode != null) { | |
leftNode.inOrder(); | |
} | |
System.out.print(value); | |
if (rightNode != null) { | |
rightNode.inOrder(); | |
} | |
} | |
public void postOrder() { | |
if (leftNode != null) { | |
leftNode.postOrder(); | |
} | |
if (rightNode != null) { | |
rightNode.postOrder(); | |
} | |
System.out.print(value); | |
} | |
@Override | |
public String toString() { | |
return value.toString(); | |
} | |
public static void main(String[] args) { | |
TreeNode<Integer> node1 = new TreeNode<>(1); | |
TreeNode<Integer> node3 = new TreeNode<>(3); | |
TreeNode<Integer> node2 = new TreeNode<>(2); | |
node2.setLeftNode(node1); | |
node2.setRightNode(node3); | |
TreeNode<Integer> node5 = new TreeNode<>(5); | |
TreeNode<Integer> node7 = new TreeNode<>(7); | |
TreeNode<Integer> node6 = new TreeNode<>(6); | |
node6.setLeftNode(node5); | |
node6.setRightNode(node7); | |
TreeNode<Integer> node4 = new TreeNode<>(4); | |
node4.setLeftNode(node2); | |
node4.setRightNode(node6); | |
node4.preOrder(); | |
System.out.println(); | |
node4.inOrder(); | |
System.out.println(); | |
node4.postOrder(); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment