diff options
| author | ziameraj16 <ziameraj16@gmail.com> | 2021-01-05 09:43:46 +0000 |
|---|---|---|
| committer | ziameraj16 <ziameraj16@gmail.com> | 2021-01-05 09:43:46 +0000 |
| commit | ef1599aef57981387b92fa772ceedb039e115afb (patch) | |
| tree | cbf252048ed66e2da3f0f6a05b03a2747fce90ef | |
| parent | b0b072656022a6446c5a817a3cbac525c7e36887 (diff) | |
| download | perlweeklychallenge-club-ef1599aef57981387b92fa772ceedb039e115afb.tar.gz perlweeklychallenge-club-ef1599aef57981387b92fa772ceedb039e115afb.tar.bz2 perlweeklychallenge-club-ef1599aef57981387b92fa772ceedb039e115afb.zip | |
Java solution for TASK #2 › Binary Tree to Linked List
| -rw-r--r-- | challenge-094/ziameraj16/README.md | 22 | ||||
| -rw-r--r-- | challenge-094/ziameraj16/java/BinaryTreeToLinkedList.java | 42 |
2 files changed, 57 insertions, 7 deletions
diff --git a/challenge-094/ziameraj16/README.md b/challenge-094/ziameraj16/README.md index 1837bb6df3..2635085bf6 100644 --- a/challenge-094/ziameraj16/README.md +++ b/challenge-094/ziameraj16/README.md @@ -1,11 +1,19 @@ # Java solution by Mohammad Meraj Zia -# Sum Path +# Binary Tree to Linked List -To compile the code run -```java -javac SumPath.java -``` -To run +1. Prepare the tree using the `TreeNode` inner class in the `BinaryTreeToLinkedList` +2. Call the `preOrderBinaryTreeTraversal()` method to convert the tree elements into a list. +3. Call `printTreeElementAsList()` to print the list. + +## Example ```java -java SumPath +TreeNode six = new TreeNode("6", null, null); +TreeNode seven = new TreeNode("7", null, null); +TreeNode five = new TreeNode("5", six, seven); +TreeNode four = new TreeNode("4", null, null); +TreeNode two = new TreeNode("2", four, five); +TreeNode three = new TreeNode("3", null, null); +TreeNode root = new TreeNode("1", two, three); +binaryTreeToLinkedList.preOrderBinaryTreeTraversal(root); ``` + diff --git a/challenge-094/ziameraj16/java/BinaryTreeToLinkedList.java b/challenge-094/ziameraj16/java/BinaryTreeToLinkedList.java new file mode 100644 index 0000000000..77c8e7cc12 --- /dev/null +++ b/challenge-094/ziameraj16/java/BinaryTreeToLinkedList.java @@ -0,0 +1,42 @@ +import java.util.ArrayList; +import java.util.List; + +public class BinaryTreeToLinkedList { + + private List<String> treeNodesAsList; + + public BinaryTreeToLinkedList() { + this.treeNodesAsList = new ArrayList(); + } + + public void preOrderBinaryTreeTraversal(TreeNode node) { + if (node == null) { + return; + } + treeNodesAsList.add(node.data); + preOrderBinaryTreeTraversal(node.left); + preOrderBinaryTreeTraversal(node.right); + } + + public void printTreeElementAsList() { + System.out.println(String.join(" -> ", treeNodesAsList)); + } + + public List<String> getTreeNodesAsList() { + return treeNodesAsList; + } + + static class TreeNode { + public String data; + public TreeNode left; + public TreeNode right; + + public TreeNode(String data, TreeNode left, TreeNode right) { + this.data = data; + this.left = left; + this.right = right; + } + } + +} + |
