Różnice między wybraną wersją a wersją aktualną.
| Next revision | Previous revision | ||
|
opis_kontenera:hash_set [2008/12/09 01:06] mszczyku utworzono |
opis_kontenera:hash_set [2008/12/09 01:37] (aktualna) mszczyku |
||
|---|---|---|---|
| Linia 1: | Linia 1: | ||
| - | ** Hash_set**=== Nagłówek 4 stopnia === | ||
| - | **Hash_set** jest to zbiór, korzystający z funkcji mieszającej do szybkiego wyszukiwania elementów. | + | |
| + | ===== Temat:Opis kontenera Hash_set ===== | ||
| + | //Autor:Marian Szczykulski// | ||
| + | |||
| + | |||
| + | ---- | ||
| + | |||
| + | **Hash_set** jest to zbiór, korzystający z funkcji mieszającej do szybkiego wyszukiwania elementów. | ||
| Szablon zbioru hash_set (kompilator GNU g++) jest następujący: | Szablon zbioru hash_set (kompilator GNU g++) jest następujący: | ||
| - | **hash_set<Key, HashFcn, EqualKey, Alloc>** | + | ^**hash_set<Key,HashFcn, EqualKey, Alloc>**^^ |
| + | |**Key**|Typ przechowywanych obiektów| | ||
| + | |**HashFcn**|Funkcja mieszająca (jest to funktor). Domyślnie hash<Key>| | ||
| + | |**EqualKey**|Funktor do porównywania dwóch obiektów. Domyślnie equal_to<Key>| | ||
| + | |**Alloc**|Alokator do zarządzania pamięcią. Domyślnie alloc| | ||
| - | **Key** - Typ przechowywanych obiektów | + | Dla kompilatora Visual Studio (2008) szablon ten wygląda inaczej. |
| - | **HashFcn** - Funkcja mieszająca (jest to funktor) | + | |
| - | Domyślnie hash<Key> | + | |
| - | **EqualKey** - Funktor do porównywania dwóch obiektów | + | |
| - | Domyślnie equal_to<Key> | + | |
| - | **Alloc** - Alokator do zarządzania pamięcią. | + | ^** hash_set<Key,hash_compare,Alloc>**^^ |
| - | Domyślnie alloc | + | |**Key**|Typ przechowywanych objektów| |
| - | __Uwaga:__**Pogrubienie** | + | |**hash_compare**|Jest to funktor który zawiera w sobie zarówno funkcje hashujaca jak i tą do porównywania dwóch objektów. Domyślnie hash_compare<Key , less<Key> | |
| - | Dla kompilatora Visual Studio (2008) szablon ten wygląda inaczej. | + | |**Alloc**|Alokator do zarządzania pamięcią.Domyślnie allocator<Key>| |
| + | |||
| + | ---- | ||
| - | ** hash_set <Key, hash_compare, Alloc>** | ||
| - | |||
| - | **Key** - Typ przechowywanych objektów | ||
| - | **hash_compare** - Jest to funktor który zawiera w sobie zarówno funkcje hashujaca | ||
| - | jak i tą do porównywania dwóch objektów | ||
| - | Domyślnie hash_compare<Key , less<Key> | ||
| - | **Alloc** - Alokator do zarządzania pamięcią. | ||
| - | Domyślnie allocator<Key> | ||
| ====== Funkcje: ====== | ====== Funkcje: ====== | ||
| ^Nazwa^Opis^ | ^Nazwa^Opis^ | ||
| - | + | |iterator begin() const |Zwraca iterator wskazujący na początek zbioru hash_set| | |
| - | |iterator begin() const |zwraca iterator wskazujący na początek zbioru hash_set| | + | |iterator end() const|Zwraca iterator wskazający na koniec zbioru hash_set| |
| - | |iterator end() const|zwraca iterator wskazający na koniec zbioru hash_set| | + | |size_type size() const|Zwraca rozmiar zbioru| |
| - | |size_type size() const|zwraca rozmiar zbioru| | + | |size_type max_size() const|Zwraca największy możliwy rozmiar zbioru| |
| - | |size_type max_size() const|zwraca największy możliwy rozmiar zbioru| | + | |bool empty() const|Zwraca tru jeżeli rozmiar zbioru jest równy zero| |
| - | |bool empty() const|zwraca tru jeżeli rozmiar zbioru jest równy zero| | + | |size_type bucket_count() const|Zwraca liczbę koszyków uzywanych przez zbiór hash_set| |
| - | |size_type bucket_count() const|zwraca liczbę koszyków uzywanych przez zbiór hash_set| | + | |void resize(size_type n)|Zwiększa liczbę koszyków do conajmniej n| |
| - | |void resize(size_type n)|zwiększa liczbę koszyków do conajmniej n| | + | |hasher hash_funct() const|Zwraca objekt(funktor) mieszający używany przez zbiór hash_set| |
| - | |hasher hash_funct() const|zwraca objekt(funktor) mieszający używany przez zbiór hash_set| | + | |key_equal key_eq() const|Zwraca objekt(funktor) służący do porównywania objektów, używany przez zbiór hash_set| |
| - | |key_equal key_eq() const|zwraca objekt(funktor) służący do porównywania objektów, używany przez zbiór hash_set| | + | |
| |hash_set& operator=(const hash_set&)|Operator przypisania.| | |hash_set& operator=(const hash_set&)|Operator przypisania.| | ||
| |void swap(hash_set&)|Zamienia zawartości dwóch zbiorów hash_set.| | |void swap(hash_set&)|Zamienia zawartości dwóch zbiorów hash_set.| | ||
| Linia 51: | Linia 50: | ||
| |bool operator==(const hash_set&,const hash_set&)|Operator porównania.| | |bool operator==(const hash_set&,const hash_set&)|Operator porównania.| | ||
| + | |||
| + | ====== Konstruktory: ====== | ||
| - | Konstruktory: | + | |hash_set()|Konstruktor domyslny. Tworzy pusty zbiór.| |
| - | + | |hash_set(size_type n)|Tworzy pusty zbiór hash_set z conajmniej n koszykami.| | |
| - | + | |hash_set(size_type n,const hasher& h)|Tworzy pusty zbiór hash_set z conajmniej n koszykami i korzystający z h jako funkcji mieszającej.| | |
| - | hash_set() Konstruktor domyslny. Tworzy pusty zbiór. | + | |hash_set(size_type n,const hasher& h,const key_equal& k)|Tworzy pusty zbiór hash_set z conajmniej n koszykami, korzystający z h jako funkcji mieszającej oraz k do porównywani objektów.| |
| - | + | |template <class InputIterator> hash_set(InputIterator f, InputIterator l)|Tworzy zbiór hash_set jako kopię z podanego zakresu.| | |
| - | hash_set(size_type n) Tworzy pusty zbiór hash_set z conajmniej n koszykami. | + | |template <class InputIterator> hash_set(InputIterator f, InputIterator l, size_type n)|Tworzy zbiór hash_set jako kopię z podanego zakresu i conajmniej n koszykami.| |
| - | + | |template <class InputIterator>hash_set(InputIterator f, InputIterator size_type n, const hasher& h)|Tworzy zbiór hash_set jako kopię z podanego zakresu, conajmniej n koszykami oraz korzystającym z h jako funkcji mieszającej.| | |
| - | hash_set(size_type n, Tworzy pusty zbiór hash_set z conajmniej n koszykami i korzystający z h jako funkcji mieszającej. | + | |hash_set(InputIterator f, InputIterator, size_type n, const hasher&, const key_equal& k)|Tworzy zbiór hash_set jako kopię z podanego zakresu, conajmniej n koszykami, korzystającym z h jako funkcji mieszającej oraz k do porównywania objektów.| |
| - | const hasher& h) | + | |hash_set(const hash_set&)|Konstruktor kopiujący.| |
| - | + | ||
| - | + | ||
| - | hash_set(size_type n, Tworzy pusty zbiór hash_set z conajmniej n koszykami, korzystający z h jako funkcji mieszającej oraz k do porównywani | + | |
| - | const hasher& h, objektów. | + | |
| - | const key_equal& k) | + | |
| - | + | ||
| - | + | ||
| - | template <class InputIterator> | + | |
| - | hash_set(InputIterator f, InputIterator l) Tworzy zbiór hash_set jako kopię z podanego zakresu. | + | |
| - | + | ||
| - | + | ||
| - | template <class InputIterator> Tworzy zbiór hash_set jako kopię z podanego zakresu i conajmniej n koszykami. | + | |
| - | hash_set(InputIterator f, InputIterator l, | + | |
| - | size_type n) | + | |
| - | + | ||
| - | template <class InputIterator> Tworzy zbiór hash_set jako kopię z podanego zakresu, conajmniej n koszykami oraz korzystającym z h jako funkcji mieszającej. | + | |
| - | hash_set(InputIterator f, InputIterator | + | |
| - | size_type n, const hasher& h) | + | |
| - | + | ||
| - | + | ||
| - | hash_set(InputIterator f, InputIterator Tworzy zbiór hash_set jako kopię z podanego zakresu, conajmniej n koszykami, korzystającym z h jako funkcji mieszającej | + | |
| - | size_type n, const hasher& oraz k do porównywania objektów. | + | |
| - | const key_equal& k) | + | |
| - | + | ||
| - | + | ||
| - | hash_set(const hash_set&) Konstruktor kopiujący. | + | |
| + | --- //[[M.Szczykulski@stud.elka.pw.edu.pl|Marian Szczykulski]] 2008/12/09 01:32// | ||