• Skip to primary navigation
  • Skip to content
  • Skip to primary sidebar
  • Skip to secondary sidebar

GoHired

Interview Questions asked in Google, Microsoft, Amazon

Join WeekEnd Online Batch from 4-April-2020 on How to Crack Coding Interview in Just 10 Weeks : Fees just 20,000 INR

  • Home
  • Best Java Books
  • Algorithm
  • Internship
  • Certificates
  • About Us
  • Contact Us
  • Privacy Policy
  • Array
  • Stack
  • Queue
  • LinkedList
  • DP
  • Strings
  • Tree
  • Mathametical
  • Puzzles
  • Graph

Mirror of Tree

February 10, 2015 by Dhaval Dave

Write a code to construct a Mirror of Binary Tree as below.

Solution 1 ) Create a New Tree and store nodes in the way we want (mirrored way)

Algo :

struct node{
    int value;
    struct node* left;
    struct node* right;
};
struct node *mirrorTree(struct node *root){
  struct node *temp;
  if(root==NULL)
    return(NULL);
  temp = (struct node *) malloc(sizeof(struct node));
  temp->value = root->value;
  temp->left  = mirrorTree(root->right);
  temp->right = mirrorTree(root->left);
  return(temp);
}
Solution 2 ) In place change ( Use Recursion )

 

void mirror(struct node* node) 
{
  if (node==NULL) 
    return;  
  else
  {
    struct node* temp;

    mirror(node->left);
    mirror(node->right);
 
    /* swap the pointers */
      temp        = node->left;
      node->left  = node->right;
      node->right = temp;
  }
}
See working Code at : http://ideone.com/uDrfeu
See Video : 

Similar Articles

Filed Under: Amazon Interview Question, Interview Questions, problem Tagged With: Binary Tree, tree

Reader Interactions

Primary Sidebar

Join WeekEnd Online/Offline Batch from 4-April-2020 on How to Crack Coding Interview in Just 10 Weeks : Fees just 20,000 INR

Join WeekEnd Online/Offline Batch from 4-April-2020

WhatsApp us

Secondary Sidebar

Custom Search

  • How I cracked AMAZON
  • LeetCode
  • Adobe
  • Amazon
  • Facebook
  • Microsoft
  • Hacker Earth
  • CSE Interview

Top Rated Questions

Regular Expression Matching

Minimum insertions to form a palindrome

Print all nodes that are at distance k from a leaf node

N teams are participating. each team plays twice with all other teams. Some of them will go to the semi final. Find Minimum and Maximum number of matches that a team has to win to qualify for finals ?

25 horses 5 tracks Find 3 fastest puzzle

Difference between a LinkedList and a Binary Search Tree BST

simple sql injection

Top 10 Interviews Techniqes for Campus Interview in IIT NIT BITS for MTech

Sequence Finder Dynamic Programming

Apriori algorithm C Code Data Mining

C++ OOPs Part2

Fibonacci Hashing & Fastest Hashtable

Find loop in Singly linked list

Inorder and Preorder traversals of a Binary Tree given. Output the Postorder traversal of it.

Implement LRU Cache

Check if an array has duplicate numbers in O(n) time and O(1) space

Right view of Binary tree

Printing Longest Common Subsequence

Facebook Interview Question : Interleave List

Binary Tree Isomorphic to each other

How strtok() Works

Memory Efficient LinkedList

Find the element that appears once others appears thrice

Introduction To Number Theory ( Part 1 )

Knight Tour Problem (Graph – Breadth First Search)

Puzzle : 100 doors in a row Visit and Toggle the door. What state the door will be after nth pass ?

Client Server C program

Find and print longest consecutive number sequence in a given sequence in O(n)

Flipkart Set 1 On Campus with Answers

Test Cases for Round Function

Copyright © 2026 · Genesis Framework · WordPress · Log in