package com.biplav.algorithms; public class FlattenBST { public static class TreeNode { public TreeNode left; public TreeNode right; public int value; public TreeNode(TreeNode left, TreeNode right, int value) { super(); this.left = left; this.right = right; this.value = value; } } public static class ListNode { public ListNode next; public int value; public ListNode(ListNode next, int value) { super(); this.next = next; this.value = value; } } public static ListNode flatten(TreeNode root) { ListNode left = root.left != null ? flatten(root.left) : null; ListNode base = new ListNode(null,root.value); ListNode right = root.right != null ? flatten(root.right) : null; base.next = right != null ? right : null; if(left == null) return base; else { ListNode home = left; while(left.next != null) left = left.next; left.next= base; return home; } } /* * 6 * 3 8 * 2 4 7 10 */ public static void main(String[] args) { TreeNode t3 = new TreeNode(null, null, 2); TreeNode t2 = new TreeNode(null, null, 4); TreeNode t4 = new TreeNode(t3, t2, 3); TreeNode t7 = new TreeNode(null, null, 7); TreeNode t10 = new TreeNode(null, null, 10); TreeNode t8 = new TreeNode(t7, t10, 8); TreeNode t6 = new TreeNode(t4, t8, 6); ListNode root = flatten(t6); while(root != null) { System.out.println(root.value); root = root.next; } } }
Tuesday, October 14, 2014
Flatten a Binary Search Tree into a LinkedList in Java
Subscribe to:
Post Comments (Atom)
Building Successful Products in the Maze of a Large Organization
*Image is generated using AI Large organizations offer a treasure trove of resources and stability for product development. However, navig...
-
Amazon India today has become the most visited e-commerce site in India. So, I decided to analyze the most expensive products that Amazon I...
-
The key given below is the universal serial key for Windows Xp.. It can by pass any windows xp cd and make your copy genuine. Do try it!!! ...
-
Sometimes while working on Linux, mysql.sock may get deleted by mistake due to some softwares.. in such cases any access to mysql wont be po...
No comments:
Post a Comment