어떤 값으로 요소를 정렬하는 우선 순위 대기열이 있습니다 (이름을 정할 수 있음). 등급에 따라 대기열에서 요소를 가져와야합니다. 그래서 함수 queue_get (rating)을 구현해야합니다. 이 함수는 또한 우선 순위 힙으로 괜찮은 등급을 증가시킵니다.우선 순위 큐 임의 액세스
하지만 문제는 힙의 각 레벨이 등급에 따라 정렬되지 않는다는 것입니다. 각 레벨의 요소는 힙 특성 만 만족시킵니다. 따라서 N 번째 요소를 등급으로 반환 할 수는 없습니다.
이러한 기능을 가진 우선 순위 대기열의 구현이 있습니까? 다른 데이터 구조를 사용해야합니까?
등급이 동일 할 수 있습니다. 등급을 변경할 때 같은 등급으로 요소의 맨 위로 이동하려면 요소가 필요합니다. 예를 들어, 다음과 같은 목록이 있습니다. a : 3 b : 2 c : 2 d : 1 등급을 올리면 다음과 같이 표시됩니다. a : 3 d : 2 b : 2 c : 2 그것으로? – sashab
요소를 두 개의 키로 정렬합니다. 먼저 등급 (내림차순)과 두 번째로 등급이 변경된 시간 순서 (내림차순)로 정렬합니다. –