Question
Consider the following Java-like pseudo-code for
inserting a node into a Binary Search Tree (BST): ```java class Node { int data; Node left, right; public Node(int item) { data = item; left = right = null; } } class BST { Node root; BST() { root = null; } void insert(int data) { root = insertRec(root, data); } Node insertRec(Node root, int data) { if (root == null) { root = new Node(data); return root; } if (data < root.data) { root.left = insertRec(root.left, data); } else if (data > root.data) { root.right = insertRec(root.right, data); } // If data == root.data, do nothing (assume no duplicates) return root; } } ``` If you insert the following sequence of numbers into an initially empty BST: `50, 30, 70, 20, 40, 60, 80`, what will be the data of the node that has `40` as its right child?Solution
Let's trace the BST construction: 1. Insert `50`: `root = 50` 2. Insert `30`: `30 < 50`, so `30` becomes `50`'s left child. ``` 50 / 30 ``` 3. Insert `70`: `70 > 50`, so `70` becomes `50`'s right child. ``` 50 / \ 30 70 ``` 4. Insert `20`: `20 < 50`, go left to `30`. `20 < 30`, so `20` becomes `30`'s left child. ``` 50 / \ 30 70 / 20 ``` 5. Insert `40`: `40 < 50`, go left to `30`. `40 > 30`, so `40` becomes `30`'s right child. ``` 50 / \ 30 70 / \ 20 40 ``` 6. Insert `60`: `60 > 50`, go right to `70`. `60 < 70`, so `60` becomes `70`'s left child. ``` 50 / \ 30 70 / \ / 20 40 60 ``` 7. Insert `80`: `80 > 50`, go right to `70`. `80 > 70`, so `80` becomes `70`'s right child. ``` 50 / \ 30 70 / \ / \ 20 40 60 80 ``` The node that has `40` as its right child is `30`.
रिक्त स्थान के लिए उपयुक्त शब्द क्या होगा?
चरखा ______________ चा...
' माँ ' शब्द का तत्सम है __________
दिए गए मुहावरे और कहावतों के अर्थ के लिए चार विकल्प दिए गए �...
- ‘पढ़ाई’ किस प्रकार की संज्ञा है?
'संतोष' का संधि विच्छेद क्या होगा?
वाक्य के अशुद्ध भाग का चयन कीजिए –
परीक्षा की ( A)/ �...
किस शब्द में उपसर्ग का प्रयोग नहीं हुआ है?
तद्भव शब्द है-
अध्यादेश में कौन-सी सन्धि है ?
'जलधि' में कौन सा समास है-