Programowanie i algorytmy

STL

STLStandard Template Library - standardowa biblioteka szablonów. Jest to biblioteka, w której zaimplementowano bardzo wydajne algorytmy, podstawowe struktury danych, kontenery oraz iteratory. Wszystkie te elementy utworzone są za pomocą szablonów w C++. Dzięki takiej konstrukcji możemy używać powyższych elementów wykorzystując dowolny typ danych wbudowany lub nie w strukturę języka C++ (spełniający pewne wymagania).

STL ma zarówno wielu zwolenników jak i przeciwników. Warto zauważyć jednak, że rozszerzenie języka C++ o tą bibliotekę powoduje, że jest on jeszcze bardziej atrakcyjny. Szablony STL są bardzo chętnie używana przez zawodników na różnego rodzaju zawodach programistycznych. Niektórzy twierdzą, że używanie tej biblioteki przyzwyczaja do nieznajomości implementacji podstawowych algorytmów i struktur danych.

Elementy, jakie wyróżniamy w standardowej bibliotece szablonów: 

  • stack - implementacja stosu
  • queue - implementacja kolejki fifo
  • deque - implementacja listy dwukierunkowej
  • priority_queue - implementacja kolejki priorytetowej
  • vector - implementacja struktury podobnej do tablicy
  • map - tablica asocjacyjna, której klucze nie powtarzają się
  • multimap - tablica asocjacyjna, której klucze powtarzają się
  • set - zbiór uporządkowany, którego elementy nie powtarzają się 
  • multiset -  zbiór uporządkowany, którego elementy powtarzają się 
  • list - implementacja listy dwukierunkowej
  • forward_list - implementacja listy jednokierunkowej