Fenwick Tree
Fenwick Tree 관련 기록.
글 관리 · 공개 범위이 글의 목차
Fenwick Tree
template <typename T>
struct Fenwick { // 1-indexed
T *data;
int FMAX;
void init(int N) { // Range: [1, N]
FMAX = N;
data = new T[FMAX + 2];
memset(data, 0, sizeof(T) * (FMAX + 2));
}
void update(int idx, T v) {
for(; idx <= FMAX; idx += idx & -idx) data[idx] += v;
}
T get(int idx) {
T res = 0;
for(; idx > 0; idx = idx & (idx - 1)) res += data[idx];
return res;
}
};
Time Complexity
- Init:
- Update:
- Get:
이전 사이트에서 옮긴 글입니다. 원본 보관본
이 기록을 연결한 글
AI로 읽기 · Markdown
로그인 없이 읽는 Markdown 원문.
curl -fsSL 'https://www.readiz.com/notes/data-structure/tree/fenwick/index.md'