RunningMedian 알고리즘


RunningMedian 알고리즘

사실 알고리즘이라고 하기도 뭐한데전체 set 에 값이 추가되거나 삭제될 때 중앙값을 바로 찾을 수 있는 방법이다.이번 SCPC 2차 예선 B번이 이러한 유형의 문제였다.펜윅트리나 세그트리를 이용해도 이 유형의 문제를 풀 수 있지만이 쪽이 조금 더 간단하긴 하다.이 방법의 기본적인 아이디어는 이렇다두개의 힙(또는 균형이진트리)을 이용해서 전체 값들 중 낮은 값 절반을 내림차순으로 한 쪽에 두고높은 값 절반을 반대편 힙에 오름차순으로 둔다.즉 낮은값들은 최대힙에 높은값은 최소힙에 담는다.그렇다면 중앙값은 항상 최대힙의 top에 위치할 것이므로 바로 알 수 있다.숫자들이 무작위로 들어올 때 이러한 구조를 어떻게 계속 유..........

RunningMedian 알고리즘에 대한 요약내용입니다.

자세한 내용은 아래에 원문링크를 확인해주시기 바랍니다.



원문링크 : RunningMedian 알고리즘