The Gateway to Computer Science Excellence
+13 votes
1.6k views

A priority queue is implemented as a Max-Heap. Initially, it has $5$ elements. The level-order traversal of the heap is: $10, 8, 5, 3, 2$. Two new elements $1$ and $7$ are inserted into the heap in that order. The level-order traversal of the heap after the insertion of the elements is: 

  1. $10, 8, 7, 5, 3, 2, 1$
  2. $10, 8, 7, 2, 3, 1, 5$
  3. $10, 8, 7, 1, 2, 3, 5$
  4. $10, 8, 7, 3, 2, 1, 5$
in DS by Veteran (52.2k points)
edited by | 1.6k views

2 Answers

+19 votes
Best answer

Answer is (D)

Whenever we insert an element in heap, it will be in last level from left to right. So, here we insert element $1$ and $7$ as children of node $5$. Then we perform heapify algorithm until we get the min/max heap. So, finally we get the heap whose level order traversal is $10,8,7,3,2,1,5$

Initial heap:

After insert of $1$

After insert of $7$

by Active (4.1k points)
edited by
–1

"A priority queue is implemented as a Max-Heap"  has no use ??? dont you think A option is correct since after insertion queue will remain be priority queue .

0
How did you deduce from the question that Heapify wasn't performed?

Don't you have to adjust the heap after each insertion?
+1 vote
answer is D
by Boss (11k points)
Answer:

Related questions

Quick search syntax
tags tag:apple
author user:martin
title title:apple
content content:apple
exclude -tag:apple
force match +apple
views views:100
score score:10
answers answers:2
is accepted isaccepted:true
is closed isclosed:true
50,737 questions
57,394 answers
198,594 comments
105,446 users