Narzędzia użytkownika

Narzędzia witryny


opis_kontenera_set

Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
opis_kontenera_set [2008/12/12 16:27]
maciekc
opis_kontenera_set [2008/12/12 17:00]
maciekc
Linia 2: Linia 2:
  
 ===== Opis ===== ===== Opis =====
- 
- 
  
 Set - zbiór. Set - zbiór.
Linia 34: Linia 32:
 ==== Metody ==== ==== Metody ====
  
-=== Konstruktory ===+=== Konstruktory ​i destruktory ​===
  
 == Konstruktor domyślny == == Konstruktor domyślny ==
Linia 40: Linia 38:
 explicit set ( const Compare&​ comp = Compare(), Allocator&​ = Allocator() ); explicit set ( const Compare&​ comp = Compare(), Allocator&​ = Allocator() );
 </​code>​ </​code>​
-Tworzy pusty zbiór, o zerowym rozmiarze, bez żadnych elementów.+Tworzy pusty zbiór, o zerowym rozmiarze, bez żadnych elementów.\\ 
 +Złożoność obliczeniowa - stała.
  
 == Konstruktor iterujący == == Konstruktor iterujący ==
Linia 47: Linia 46:
 const Compare&​ comp= Compare(), const Allocator&​ = Allocator() ); const Compare&​ comp= Compare(), const Allocator&​ = Allocator() );
 </​code>​ </​code>​
-Tworzy nowy zbiór który zawiera kopię elementów z podanego zakresu - pomiędzy **first**, a **last**.+Tworzy nowy zbiór który zawiera kopię elementów z podanego zakresu - pomiędzy **first**, a **last**.\\ 
 +Złożoność obliczeniowa - liniowa jeśli elementy są posortowane według **comp**, dla nie posortowanych logarytmiczna.
  
 == Konstruktor kopiujący == == Konstruktor kopiujący ==
Linia 53: Linia 53:
 set ( const set<​Key,​Compare,​Allocator>&​ x ); set ( const set<​Key,​Compare,​Allocator>&​ x );
 </​code>​ </​code>​
-Tworzy kopię zbioru, zawierającą kopie wszystkich elementów.+Tworzy kopię zbioru, zawierającą kopie wszystkich elementów.\\ 
 +Złożoność obliczeniowa - liniowa. 
 + 
 +== Destruktor domyślny == 
 +<code c++> 
 +~set ( ); 
 +</​code>​ 
 +Niszczy obiekt wywołując destruktory dla wszystkich elementów które zawiera, i zwalnia całą przydzieloną pamięć.\\ 
 +Złożoność obliczeniowa - liniowa. 
 + 
 +=== Iteratory === 
 + 
 +== begin == 
 +<code c++> 
 +iterator begin (); 
 +const_iterator begin () const; 
 +</​code>​ 
 +Zwraca iterator wskazujący na pierwszy element w zbiorze.\\ 
 +Złożoność obliczeniowa - stała. 
 + 
 +== end == 
 +<code c++> 
 +iterator end (); 
 +const_iterator end () const; 
 +</​code>​ 
 +Zwraca iterator wskazujący na element za ostatnim elementem w zbiorze.\\ 
 +Złożoność obliczeniowa - stała. 
 + 
 +== rbegin == 
 +<code c++> 
 +reverse_iterator rbegin(); 
 +const_reverse_iterator rbegin() const; 
 +</​code>​ 
 +Zwraca odwrotny iterator wskazujący na ostatni element w zbiorze. Pozwala przejść po elementach w odwrotnej kolejności.\\ 
 +Złożoność obliczeniowa - stała. 
 + 
 +== rend == 
 +<code c++> 
 +reverse_iterator rend(); 
 +const_reverse_iterator rend() const; 
 +</​code>​ 
 +Zwraca odwrotny iterator wskazujący na element przed pierwszym elementem.\\ 
 +Złożoność obliczeniowa - stała. 
 + 
 +=== Pojemność === 
 + 
 +== empty == 
 +<code c++> 
 +bool empty ( ) const; 
 +</​code>​ 
 +Zwraca true jeśli zbiór jest pusty.\\ 
 +Złożoność obliczeniowa - stała. 
 + 
 +== size == 
 +<code c++> 
 +size_type size() const; 
 +</​code>​ 
 +Zwraca ilość elementów w zbiorze.\\ 
 +Złożoność obliczeniowa - stała. 
 + 
 +== max_size == 
 +<code c++> 
 +size_type max_size () const; 
 +</​code>​ 
 +Zwraca maksymalną liczbę elementów jakie może zawierać zbiór, ze względu na ograniczenia systemu, oraz biblioteki.\\ 
 +Złożoność obliczeniowa - stała. 
 + 
 +=== Modyfkiacja zawartości === 
 + 
 +== insert == 
 +<code c++> 
 +pair<​iterator,​bool>​ insert ( const value_type&​ x ); 
 +</​code>​ 
 +Dodawanie elementów do zbioru. **//x//** jest elementem który dodajemy.\\ 
 +Zwracana wartość to para zawierająca iterator na wstawiony element oraz zmienna bool która mówi o tym czy wstawienie się powiodło(mógł już istnieć element o tej samej wartości). Jeśli wstawienie nie powiodło się iterator wskazuje na element o wartości elementu wstawianego który już był w zbiorze.\\ 
 +Złożoność obliczeniowa - logarytmiczna. 
 + 
 +<code c++> 
 +iterator insert ( iterator position, const value_type&​ x ); 
 +</​code>​ 
 +Dodawanie elementów do zboiru z zaznaczeniem pozycji od której zacząć poszukiwanie miejsca na wstawienie elementu. 
 +Może być w niektórych przypadkach szybsze niż zwykły insert.\\ 
 +Zwracana wartość to iterator na wstawiony, bądź już istniejący element.\\ 
 +Złożoność obliczeniowa - logarytmiczna. 
 + 
 +<code c++> 
 +template <class InputIterator>​ 
 +      void insert ( InputIterator first, InputIterator last ); 
 +</​code>​ 
 +Wstawia elementy z zakresu iteratorów **//​first//​** i **//​last//​**. **//​first//​** wchodzi w zakres, **//​last//​** nie.\\ 
 +Złożoność obliczeniowa - logarytmiczna.
opis_kontenera_set.txt · ostatnio zmienione: 2008/12/12 17:51 przez maciekc