Harvard University Heaps Programming Worksheet

Question 5: Heaps(a) Suppose that we would like to verify if the elements in array A satisfy the heap property, assuming
the usual heap implementation shown in class. Write the pseudo-code for a recursive algorithm called
VerifyHeap(A), which returns true if A is indeed a valid max-heap, and false otherwise. You may use the
attribute A.heapsize. Write the recurrence for the runtime of your algorithm, and justify the worst-case
runtime of O(n) and the best-case of O(1).
7
(b) A max-heap is contained in array A, using the implementation as shown in class. However, the
array contains an error, in that the entry at index k is empty. Instead of rebuilding the entire heap from
scratch, design an algorithm that repairs the heap. The result of your algorithm must contain a valid heap
in array A with a correct A.heapsize attribute. Write the pseudo-code for your algorithm, which must be
called Repair Heap(A,k). Justify the worst-case runtime of O(log n) and the best-case of O(1).
(c) At the 2020 Tokyo Olympics, there are n athletes competing in the 100m sprint. The organizers
have planned for exactly 5 heats, with each heat containing n/5 athletes. The finish times of each heat will
be stored in a min-heap: H1, H2, H3, H4, H5. For example, H1 is a min-heap containing the finish times
of the athletes from the first heat. Once the heats are complete, the organizers must determine the top 40
athletes who will continue to the quarter-finals. Design an algorithm that takes as input the five heaps,
and outputs the best 40 finish times, over all athletes, regardless of heat. Call your algorithm Top40(H1,
H2, H3, H4, H5) and provide the pseudo-code. Justify the runtime of O(log n).

Calculate your order
275 words
Total price: $0.00

Top-quality papers guaranteed

54

100% original papers

We sell only unique pieces of writing completed according to your demands.

54

Confidential service

We use security encryption to keep your personal data protected.

54

Money-back guarantee

We can give your money back if something goes wrong with your order.

Enjoy the free features we offer to everyone

  1. Title page

    Get a free title page formatted according to the specifics of your particular style.

  2. Custom formatting

    Request us to use APA, MLA, Harvard, Chicago, or any other style for your essay.

  3. Bibliography page

    Don’t pay extra for a list of references that perfectly fits your academic needs.

  4. 24/7 support assistance

    Ask us a question anytime you need to—we don’t charge extra for supporting you!

Calculate how much your essay costs

Type of paper
Academic level
Deadline
550 words

How to place an order

  • Choose the number of pages, your academic level, and deadline
  • Push the orange button
  • Give instructions for your paper
  • Pay with PayPal or a credit card
  • Track the progress of your order
  • Approve and enjoy your custom paper

Ask experts to write you a cheap essay of excellent quality

Place an order