На протяжении всей документации по сложности большие выраженияO, такие какO (n)илиO (m log n), относятся к размерам контейнеровnиm. В этой документации эти размерыне означаютзнакомой<size
>функции, которая возвращаетчисло элементовконтейнера. Потому что для интервального контейнера
interval_set<int> mono;
mono += interval<int>::closed(1,5);
mono.size() == 5;
mono.interval_count() == 1;
Это размер, и количество содержащихся интервалов обычно отличается. Однородно относиться кразмеру, который имеет значение для итерации, которая является решающим типом размера относительно алгоритмического поведения, есть функция.
bool T::iterative_size()const;
для всех элементов и интервальных контейнеров icl. Таким образом, для утверждений сложности во всей документации icl размеры будут<iterative_sizes
>, а большиеOвыражения, такие какO(m log n), будут относиться к размерам.
n = y.iterative_size();
m = x.iterative_size();
Для контейнеров<y
>и<x
>. Обратите внимание, что
iterative_size
относится к первичным сущностям, которые мы можем повторять. Для интервальных контейнеров это интервалы или сегменты.
Itervative_size
Никогда не относится к итерации элементов для интервальных контейнеров.