The objective of PA3 is to create a heap implementation that is correct and meets the complexity expectations for heap operations. To support you thinking about complexity and evaluating the complexity of your code, we are giving you an awesome main and a general framework for measuring the complexity of a heap algorithm. Additionally, heap_tests now includes a test to see if your program's complexity is close to what we expect. This version of heap_tests is exactly what Checkin prelim testing is running. Download both:

Then write the functions in the new heap.py. The Checkin tab on the course website will perform preliminary testing of your code. These tests do not indicate your final grade. They can, however, catch mistakes in your submission. You can re-submit your file as often as you want.
Here is an example run of the main function in heap.py: