Python: Find the kth largest element in an unsorted array using Heap queue algorithm
Python heap queue algorithm: Exercise-7 with Solution
Write a Python program to find the kth (1 <= k <= array's length) largest element in an unsorted array using Heap queue algorithm.
Sample Solution:
Python Code:
import heapq
class Solution(object):
def find_Kth_Largest(self, nums, k):
"""
:type nums: List[int]
:type of k: int
:return value type: int
"""
h = []
for e in nums:
heapq.heappush(h, (-e, e))
for i in range(k):
w, e = heapq.heappop(h)
if i == k - 1:
return e
arr_nums = [12, 14, 9, 50, 61, 41]
s = Solution()
result = s.find_Kth_Largest(arr_nums, 3)
print("Third largest element:",result)
result = s.find_Kth_Largest(arr_nums, 2)
print("\nSecond largest element:",result)
result = s.find_Kth_Largest(arr_nums, 5)
print("\nFifth largest element:",result)
Sample Output:
Third largest element: 41 Second largest element: 50 Fifth largest element: 12
Flowchart:
Visualize Python code execution:
The following tool visualize what the computer is doing step-by-step as it executes the said program:
Python Code Editor:
Have another way to solve this solution? Contribute your code (and comments) through Disqus.
Previous: Write a Python program to sort a given list of elements in ascending order using Heap queue algorithm.
Next: Write a Python program to compute maximum product of three numbers of a given array of integers using Heap queue algorithm.
What is the difficulty level of this exercise?
Test your Python skills with w3resource's quiz
Python: Tips of the Day
Returns the symmetric difference between two iterables, without filtering out duplicate values:
Example:
def tips_symmetric_difference(p, q): _p, _q = set(p), set(q) return [item for item in p if item not in _q] + [item for item in q if item not in _p] print(tips_symmetric_difference([2, 4, 6], [2, 4, 8]))
Output:
[6, 8]
- New Content published on w3resource:
- Scala Programming Exercises, Practice, Solution
- Python Itertools exercises
- Python Numpy exercises
- Python GeoPy Package exercises
- Python Pandas exercises
- Python nltk exercises
- Python BeautifulSoup exercises
- Form Template
- Composer - PHP Package Manager
- PHPUnit - PHP Testing
- Laravel - PHP Framework
- Angular - JavaScript Framework
- React - JavaScript Library
- Vue - JavaScript Framework
- Jest - JavaScript Testing Framework