w3resource

Python: Accepts an arbitrary list and converts it to a heap using Heap queue algorithm


4. List to Heap Conversion

Write a Python function that accepts an arbitrary list and converts it to a heap using the heap queue algorithm.

Sample Solution:

Python Code:

import heapq as hq
raw_heap = [25, 44, 68, 21, 39, 23, 89]
print("Raw Heap: ", raw_heap)
hq.heapify(raw_heap)
print("\nHeapify(heap): ", raw_heap)

Sample Output:

Raw Heap:  [25, 44, 68, 21, 39, 23, 89]

Heapify(heap):  [21, 25, 23, 44, 39, 68, 89]

Flowchart:

Python heap queue algorithm: Accepts an arbitrary list and converts it to a heap using Heap queue algorithm.

For more Practice: Solve these Related Problems:

  • Write a Python program to convert an arbitrary list of integers into a heap using heapq.heapify and then print the resulting heap.
  • Write a Python function that accepts any list and returns a heapified version, ensuring that the smallest element is at the root.
  • Write a Python script to take a list of random numbers, convert it to a heap, and then demonstrate the heap property by printing successive heappop results.
  • Write a Python program to transform a list into a heap using heapq and then verify the heap structure by checking that each parent node is less than or equal to its children.

Go to:


Previous: Write a Python program to implement a heapsort by pushing all values onto a heap and then popping off the smallest values one at a time.
Next: Write a Python program to delete the smallest element from the given Heap and then inserts a new item.

Python Code Editor:

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.