Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Insertion

Boost , Chapter 1. Boost.Icl , Function Reference

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

Insertion

интервал

интервал
карты

элемента

элемент
карты

V T::insert(const P&)

ei

b p

e

b

V insert(T&, const P&)

ei

b p

e

b

J T::insert(J pos, const P&)

i

p

e

b

J insert(T&, J pos, const P&)

i

p

e

b

T& insert(T&, const P&)

e i S

b p M

e s

b m

T& T::set(const P&)

b p

1

T& set_at(T&, const P&)

b p

1

Insertion

Эффекты изобретение реализовано insert и >добрение реализовано add и оператор += идентичны для всех набор-типов <>icl.

Для Map-types, insert предоставляет stl семантику вставки в отличие от add и operator +=, который реализует обобщенное дополнение, которое выполняет агрегации, если ключевые значения сталкиваются или ключевые интервалы. insert на Картах не изменяет содержимое карт в точках, где ключи объекта для вставки перекрываются или сталкиваются с ключами, которые уже находятся на карте.

Setting values

Переписные значения с использованием оператор[], как в

my_map[key] = new_value;

не предоставляется для interval_maps, потому что оператор[] не реализован для них. В качестве замены функции T& T::set(const P&) могут быть использованы для достижения того же эффекта:

my_map.set(make_pair(overwrite_this, new_value));

// overload table for functions      T\P| e i b p  
V T::insert(const P&)                ---+--------
V insert(T&, const P&)                s | s
                                      m |     m
                                      S |   S
                                      M |       M

Table 1.27. Time Complexity for member function insert on icl containers

T& T::insert(const P&)

домен
тип

интервал
тип

домен
отображение
тип

интервал
отображение
тип

std::set

O(log n)

icl::map

O(log n)

interval_set
separate_interval_set

O(log n)

amortized
O(log n)

split_interval_set

O(log n)

O(n)

interval_map
split_interval_map

O(log n)

O(n)


// overload tables for function      element containers:     interval containers:  
T& insert(T&, const P&)              T\P| e b s m            T\P| e i b p S M
                                     ---+--------            ---+------------
                                      s | s   s               S | S S     S
                                      m |   m   m             M |     M M   M

Table 1.28. Time Complexity for inplace insertion on element containers

T& insert(T& y, const P& x>>

домен
тип

домен
отображение
тип

интервал

интервал
карты

std::set

O(log n)

О(м)

icl::map

O(log n)

О(м)


В таблице приведены характеристики сложности времени вставки для интервальных контейнеров.

Table 1.29. Time Complexity for inplace insertion on interval containers

T& insert(T& y, const P& x>>

домен
тип

интервал
тип

домен
отображение
тип

интервал
отображение
тип

интервал

интервал
карты

interval_sets

interval_set
separate_interval_set

O(log n)

amortized
O(log n)

O(m log(n+m))

split_interval_set

O(log n)

O(n)

O(m log(n+m))

интервал_карты

O(log n)

O(n)

O(m log(n+m))


Hinted insertion

Функция J T::insert(J prior, const P& addend) позволяет вставить в 30> константное время342>> Если это невозможно, то характеристики сложности, как указано для неподсказки выше. Для этих комбинаций типов доступна вставка с краном:

// overload table for insertion with hint        T\P| e i b p  
J T::insert(J pos, const P&)                     ---+--------
J insert(T&, J pos, const P&)                     s | s
                                                  m |     m
                                                  S |   S
                                                  M |       M

// overload table for member function         T\P| b p 
T& T::set(const P&)                           ---+----
T& set_at(T&, const P&)                        m | m
                                               M |   M

Table 1.30. Time Complexity for member function `set`

T& set(T&, const P&)

domain_mapping_type

интервал_картирование_тип

icl::map

O(log n)

интервал_карты

amortized
O(log n)


См. также . .

[ORIG_BEGIN]

[ORIG_END] -->

Addition

Back to section . . .

Function Synopsis

[ORIG_BEGIN]

[ORIG_END] -->

PrevUpHomeNext

Статья Insertion раздела Chapter 1. Boost.Icl Function Reference может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Function Reference ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 20:00:35/0.0084340572357178/0