• 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

Advanced SQL Injection

SAP Off Campus Hiring_ March 2015 Computer Skills

Find Nearest Minimum number in left side in O(n)

Cisco Hiring Event 21st – 22nd Feb 2015

Maximum path sum between two leaves

Printing each word reverse in string

In Given LinkedList Divide LL in N Sub parts and delete first K nodes of each part

Find two non repeating elements in an array of repeating elements

Print Power Set of a Set

Check a String is SUBSEQUENCE of another String Find Minimum length for that ( DNA Matching )

Printing Longest Common Subsequence

Find next greater number with same set of digits

Coin Collection Dynamic Programming

SAP Off Campus Hiring_ March 2015 Sample Questions

Reversal of LinkedList

‘N’ Story Building, with 1,2,3 steps how many ways can a person reach top of building.

Client Server C program

HackeEarth Flipkart’s Drone

Convert number to words java

N Petrol bunks or City arranged in circle. You have Fuel and distance between petrol bunks. Is it possible to find starting point so that we can travel all Petrol Bunks

Generic Object Oriented Stack with Template

There are N nuts and N bolts, u have to find all the pairs of nuts and bolts in minimum no. of iteration

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

Find an index i such that Arr [i] = i in array of n distinct integers sorted in ascending order.

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 ?

Leetcode: Merge Intervals

Code Chef PRGIFT Solution

Print vertical sum of all the axis in the given binary tree

Get K Max and Delete K Max in stream of incoming integers

Binary Tree in Java

Copyright © 2026 · Genesis Framework · WordPress · Log in