나는 O(k log(n))
시간에 펜윅 트리에서 kth
가장 작은 실제 주파수를 찾으려고합니다.
내 데이터 인 경우 :Fenwick-Tree에서 k 번째로 작은 원소를 찾는 O (klogn) 시간 알고리즘
Tree = [1,3,1,10,3]
Actual frequency = [1,2,1,6,3]
그래서 두 번째 작은 요소는
while(start<=end){
int mid=(start+end)>>1;
if(read(mid)>=k)end=mid-1; // read(mid) returns the cummulative frequency.
else start=mid+1;
}
시작은 해답이 될한다, 그럼 내가 가능한 해결책을 생각 1.
질문과 예를 이해할 수 없습니다. –
BIT =? 그 약어인가요? – kol
* O (Nlogk), *와 같은 의미입니까? * N *은 집합의 요소 수입니까? (나는 @KarolyHorvath와 동의한다. 나는 질문과 예제를 이해하지 못한다.) – thb