leetcode

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

commit 4051ad7047233180411f610e43be80af6a13695d
parent 3eac7b343ae42dd569977f371a49f2e089820810
Author: Andrew Laack <andrew@laack.co>
Date:   Wed,  2 Jul 2025 14:32:26 -0500

Completed kth largest element in a stream

Diffstat:
Akth-largest-element-in-a-stream/kth-largest-element-in-a-streamV2.py | 20++++++++++++++++++++
1 file changed, 20 insertions(+), 0 deletions(-)

diff --git a/kth-largest-element-in-a-stream/kth-largest-element-in-a-streamV2.py b/kth-largest-element-in-a-stream/kth-largest-element-in-a-streamV2.py @@ -0,0 +1,20 @@ +from heapq import heapify, heappush, heappop + +class KthLargest: + + def __init__(self, k: int, nums: List[int]): + heapify(nums) + self.nums = nums + self.k = k + self.prune() + + def prune(self): + k = self.k + nums = self.nums + while len(nums) > k: + heappop(nums) + + def add(self, val: int) -> int: + heappush(self.nums, val) + self.prune() + return self.nums[0]