standard template library
Popoln pregled knjižnice standardnih predlog (STL):
Standardna knjižnica predlog (STL) v jeziku C ++ je zbirka razredov predlog, ki zagotavljajo podatkovne strukture, kot so nizi, vektorji, čakalne vrste itd. STL je knjižnica, sestavljena iz vsebnikov, algoritmov in iteratorjev.
Ker je STL sestavljen iz zbirke razredov predlog, gre za splošno knjižnico, ki je neodvisna od podatkovnih vrst.
=> Tukaj preberite obsežno serijo vadnic za C ++.
Kaj se boste naučili:
kako dobiti ponarejeno e-pošto
Sestavni deli STL
STL je v glavnem sestavljen iz naslednjih komponent, ki so navedene spodaj:
# 1) Zabojniki
Vsebnik je zbirka predmetov določene vrste podatkovne strukture. V STL imamo različne vrste razredov vsebnikov, kot so matrika, vektor, vrsta, deque, seznam, zemljevid, niz itd. Ti vsebniki so generične narave in se izvajajo kot predloge razredov.
Posode so dinamične narave in se lahko uporabljajo za shranjevanje različnih vrst predmetov.
# 2) Algoritmi
Algoritmi so metode ali funkcije, ki delujejo na vsebnike. Z uporabo algoritmov, ki jih zagotavlja STL, imamo lahko metode za iskanje, razvrščanje, spreminjanje, pretvorbo ali inicializacijo vsebine predmetov razreda vsebnika.
Algoritmi, ki jih zagotavlja STL, imajo vgrajene funkcije, ki lahko neposredno delujejo na kompleksni podatkovni strukturi, namesto da bi algoritme morali pisati sami.
Na primer, Funkcijo reverse () v STL lahko uporabite za obrnitev povezanega seznama.
# 3) Iteratorji
Iteratorji so zelo pomembna in prepoznavna lastnost STL. Iteratorji so konstrukti, ki se uporabljajo za prehod skozi predmete vsebnika. Podobno kot indeksi, ki jih uporabljamo za prehod skozi nize, iteratorji delujejo na predmete razreda vsebnika in jih lahko uporabljamo za prehod skozi podatke.
Zabojniki
Posode shranjujejo predmete in podatke. V bistvu gre za generične razrede, ki temeljijo na predlogi.
Posode v STL so razdeljene na naslednje vrste:
# 1) Zaporedni zabojniki
Zabojniki, do katerih je mogoče dostopati zaporedno ali linearno, naj bi bili zaporedni zabojniki.
Polja, vektorji, seznami in deki so vsebniki STL, ki podatke shranjujejo linearno in do katerih je mogoče dostopati zaporedno.
# 2) Asociativni zabojniki
Asociativni vsebniki so vsebniki, ki izvajajo razvrščene podatkovne strukture. Te posode je hitro iskati. Nekateri od Primeri asociativnih vsebnikov so Map, Set, MultiMap, Multiset itd. Ti vsebniki se običajno izvajajo v paru ključ / vrednost.
# 3) Posvojitelji posod
Sprejemniki vsebnikov so zaporedni zabojniki, vendar se izvajajo z zagotavljanjem drugačnega vmesnika. Tako so vsebniki, kot so čakalna vrsta, deque, stack in prednostna vrsta, vsi razvrščeni med sprejemnike vsebnikov.
Iteratorji
Iteratorji so konstrukti, ki jih uporabljamo za prehod ali prehod skozi vsebnike v STL. Iteratorji so v STL zelo pomembni, saj delujejo kot most med algoritmi in vsebniki. Iteratorji vedno kažejo na vsebnike in dejansko algoritmi dejansko delujejo na iteratorjih in nikoli neposredno na vsebnikih.
Iteratorji so naslednjih vrst:
- Vhodni ponovitelji: Najenostavnejši in se večinoma uporablja v algoritmih z enim prehodom.
- Izhodni ponovitelji: Enako kot vhodni iteratorji, vendar se ne uporablja za prehod.
- Dvosmerni ponovitelji: Ti iteratorji se lahko premikajo v obe smeri.
- Posrednik Iteratorji: Uporablja se lahko le v smeri naprej, en korak naenkrat.
- Iteratorji z naključnim dostopom: Enako kot kazalci. Lahko se uporablja za naključen dostop do katerega koli elementa.
Algoritmi
Algoritmi so nabor funkcij ali metod, ki jih zagotavlja STL in delujejo na zabojnike. To so vgrajene funkcije in jih je mogoče uporabiti neposredno s STL vsebniki in iteratorji, namesto da pišemo lastne algoritme.
vprašanja za intervju na c ++
STL podpira naslednje vrste algoritmov:
- Iskanje algoritmov
- Algoritmi za razvrščanje
- Spreminjanje ali manipulacija algoritmov
- Algoritmi, ki ne spreminjajo
- Numerični algoritmi
- Min / Max algoritmi
Kot predlaga vsaka vrsta algoritma, lahko te algoritme uporabimo za doseganje različnih funkcionalnosti v vsebnikih STL, kot so iskanje, razvrščanje, pretvorba podatkov v vsebnikih, iskanje najmanjše / največje vrednosti itd.
Zaključek
To je kratka predstavitev knjižnice standardnih predlog. V naslednjih vajah bomo izvedeli več o vsakem vsebniku, algoritmih in iteratorjih.
=> Tukaj preverite popolno serijo C ++ BREZPLAČNIH vadb