72
правки
Изменения
→Построение дерева
TreeBuild(a[], i, tl, tr)
// Мы находимся в элементе с номером i, который отвечает за полуинтервал [tl, tr)
if (tl = tr) return;
if (tr - tl = 1)
TreeBuild(a[])
for i = n - 1..2 * n - 1
t[i] = a[i - n - 1]
for i = n - 2..0
t[i] = f(t[2 * i + 1], t[2 * i + 2])