From 9144853d763804240d52dc30223f4392bf84fcc0 Mon Sep 17 00:00:00 2001 From: Priyanshu Jha <70253043+priyanshu10118@users.noreply.github.com> Date: Sun, 24 Oct 2021 13:35:02 +0530 Subject: [PATCH] Create interchange_left_right_btree.c --- Trees/interchange_left_right_btree.c | 53 ++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 Trees/interchange_left_right_btree.c diff --git a/Trees/interchange_left_right_btree.c b/Trees/interchange_left_right_btree.c new file mode 100644 index 0000000..99de1e6 --- /dev/null +++ b/Trees/interchange_left_right_btree.c @@ -0,0 +1,53 @@ +#include +#include + +struct node +{ + int data; + struct node* left; + struct node* right; +}; + +struct node* newNode(int data) +{ + struct node* node = (struct node*)malloc(sizeof(struct node)); + node->data = data; + node->left = NULL; + node->right = NULL; + return(node); +} + +void printInorder(struct node* node) +{ + if (node == NULL) + return; + printInorder(node->left); + printf("%d ", node->data); + printInorder(node->right); +} + + +void swapTree(struct node*node) +{ + if(node==NULL) return; + struct node*temp=node->left; + node->left=node->right; + node->right=temp; + swapTree(node->left); + swapTree(node->right); +} +int main() +{ + struct node *root = newNode(1); + root->left = newNode(2); + root->right = newNode(3); + root->left->left = newNode(4); + root->left->right = newNode(5); + printf("Inorder traversal of binary tree is : "); + printInorder(root); + swapTree(root); + printf("\nAfter swap Inorder traversal of binary tree is : "); + printInorder(root); + printf("\n"); + return 0; +}