Różnice między wybraną wersją a wersją aktualną.
Both sides previous revision Previous revision Next revision | Previous revision | ||
inplace_merge [2009/04/03 18:04] ornsh |
inplace_merge [2009/04/03 18:25] (aktualna) ornsh |
||
---|---|---|---|
Linia 12: | Linia 12: | ||
BidirectionalIterator last, StrictWeakOrdering comp); | BidirectionalIterator last, StrictWeakOrdering comp); | ||
</code> | </code> | ||
+ | |||
+ | ===== Opis algorytmu ===== | ||
Algorytm zawarty w Standard Template Library. | Algorytm zawarty w Standard Template Library. | ||
Linia 18: | Linia 20: | ||
W drugiej wersji możliwe jest dostarczenie własnego funktora testującego poprzedzanie elementów. Funkcja testująca pobiera 2 argumenty i zwraca wartość logiczną //TRUE// w przypadku, gdy pierwszy argument poprzedza drugi; jeśli zamienimy argumenty miejscami otrzymamy //FALSE//. | W drugiej wersji możliwe jest dostarczenie własnego funktora testującego poprzedzanie elementów. Funkcja testująca pobiera 2 argumenty i zwraca wartość logiczną //TRUE// w przypadku, gdy pierwszy argument poprzedza drugi; jeśli zamienimy argumenty miejscami otrzymamy //FALSE//. | ||
- | ===== Nagłówek ===== | + | ===== Złożoność ===== |
- | <code cpp>#include <algorithm></code> | + | Złożoność pesymistyczna algorytmu to O(N log(N)). |
- | ===== Definicja inplace_merge() ===== | + | ===== Nagłówek ===== |
- | <code cpp></code> | + | <code cpp>#include <algorithm></code> |
===== Parametry ===== | ===== Parametry ===== | ||
Linia 123: | Linia 125: | ||
std::cout << std::endl <<std::endl; | std::cout << std::endl <<std::endl; | ||
</code> | </code> | ||
+ | |||
+ | ===== inplace_merge algorithm.cpp ===== | ||
+ | |||
+ | {{ inplace_merge algorithm.cpp }} | ||
+ |