Spis treści

Kolekcje i algorytmy STL

Algorytmy STL

Do wykonania tego zadania szablon klasy Wektor powinien posiadać zaimplementowany iterator o swobodnym dostępie oraz metody begin i end() zgodnie z treścią jednego z poprzednich zadań.

Algorytmy STL

Przetestuj działanie algorytmów sort(), reverse(), fill(), rotate(), replace(), random_shuffle, min_element() na kolekcji Wektor.

  1. utwórz wektor i wypełnij go liczbami całkowitymi od 1 do 100
  2. wymieszaj zawartość całego wektora za pomocą algorytmu random_shuffle i wyświetl rezultat
  3. posortuj elementy wektora i wyświetl rezultat
  4. odwróć kolejność pierwszej połowy elementów wektora
  5. wypełnij 20 ostatnich wartości zawartych w wektorze wartością -1 za pomocą algorytmu fill
  6. przesuń cyklicznie wszystkie elementy wektora o jedną pozycję w tył tak aby drugi element był pierwszym, trzeci drugim itd.
  7. znajdź najmniejszy element
  8. znajdź liczbę wszystkich liczb parzystych w wektorze za pomocą algorytmu count_if. Warunek do sprawdzenia przekaż jako wskaźnik do odpowiedniej funkcji.
  9. zamień wszystkie elementy wektora mniejsze od 50 na wartość 0 za pomocą algorytmu replace_if. Warunek do sprawdzania przekaż za pomoca obiektu funkcyjnego (obiektu przeciążającego operator()).

Klasa Wyraz

Zaimplementuj klasę Wyraz służącą do obsługi łańcuchów znaków składających się wyłącznie z liter.
Klasa Wyraz:

Przykład działania:

Wyraz w;
while(!cin.eof())
{
   cin >> w;
   cout << w << endl;
}

Przydatne funkcje:

Słownik (kolekcja Map)

Wykorzystaj kolekcję Map oraz klasę Wyraz do stworzenia słownika zgodnie z treścią zadania z pierwszych zajęć.