• 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

Rectangular chocolate bar Create at least one piece which consists of exactly nTiles tiles

Find if a binary tree is height balanced ?

Python String and numbers

Sequence Finder Dynamic Programming

Find next greater number with same set of digits

Singly linked list

Doubly linked list

Given a float number convert it into the string WITHOUT using any inbuilt Function

Linked List V/S Binary Search Tree

Sort Stack in place

Flipkart Set 1 On Campus with Answers

Find shortest distances between every pair of vertices ( Dynamic Programming Floyd Warshall Algorithm)

Subset Sum Problem Dynamic programming

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

Minimum insertions to form a palindrome

Leetcode: Edit Distance

CodeChef Code SGARDEN

Trapping Rain Water

Skiing on Mountains Matrix

Maximum difference between two elements s.t larger element appears after the smaller number

Facebook Interview Question : Interleave List

Given Set of words or A String find whether chain is possible from these words or not

Memory Efficient LinkedList

Generate largest number arranging a no. of given non negative integer numbers

Reverse a Linked List in groups of given size

LeetCode: Container With Most Water

Find two non repeating elements in an array of repeating elements

Sort an array according to the order defined by another array

Code Chef PRGIFT Solution

SAP Off Campus Hiring_ March 2015 Computer Skills

Copyright © 2025 · Genesis Framework · WordPress · Log in