유튜브블로그Top 10
내 프로필

데브허브 안내
소개업데이트 소식

데브허브 커뮤니티

Kth Largest Sum in a Binary Tree - Leetcode 2583 - Python

NeetCodeIO

2024. 10. 22.

0

#backend
  • 트리의 각 레벨의 합을 구하기 위해 BFS 알고리즘을 사용할 수 있습니다 🌳
  • 레벨 합을 구한 후, K개의 가장 큰 값을 찾기 위해 정렬 과정을 거쳐도 좋지만, 이를 위해서는 O(HlogH)의 시간 복잡도가 발생합니다.
  • Max Heap을 이용하면 K개의 가장 큰 값을 빠르게 찾을 수 있습니다. ⛰️
  • Min Heap을 사용하도록 하여, 각 레벨에서 해당 Heap의 최솟값을 제거하며 항상 K개의 가장 큰 값을 저장합니다. 🐇
  • 이 방법은 트리의 높이와 K의 값에 따라 시간 복잡도가 n + H * logK 으로 달라집니다.
  • 트리의 균형 상태에 따라 최적의 해결책 선택이 제시됩니다. ⚖️

Recommanded Videos