Mis on kaardid C++ keeles?
Mis on kaardid C++ keeles?

Video: Mis on kaardid C++ keeles?

Video: Mis on kaardid C++ keeles?
Video: ☯️ Mis on kaksikhing? ☯️ 2024, Mai
Anonim

Kaardid on assotsiatiivsed konteinerid, mis salvestavad elemente, mis on moodustatud võtmeväärtuse ja vastendatud väärtuse kombinatsioonist, järgides kindlat järjekorda. Sees kaart , kasutatakse võtmeväärtusi tavaliselt elementide sortimiseks ja unikaalseks tuvastamiseks, samas kui vastendatud väärtused salvestavad selle võtmega seotud sisu.

Milleks on siin C++ kaartide kasu?

kaart väärtus_komp() sisse C++ STL – tagastab objekti, mis määrab, kuidas elemendid kaart järjestatud (vaikimisi '<'). kaart funktsioon key_comp() sisse C++ STL – tagastab objekti, mis määrab, kuidas elemendid on kaart on järjestatud (vaikimisi '<'). kaart ::suurus() tolli C++ STL – tagastab elementide arvu kaart.

Kas ülaltoodud kõrval on kaardid järjestatud C++? Jah, std:: kaart on tellitud põhineb võtmel K, kasutades objektide võrdlemiseks vaikimisi std::less. Nii et kui ma itereerin selle üle, siis itereerub see kõigepealt esimese sisestuse stringiga? Ei. See kordab sorteeritud järjekord , mitte tellida et sisestasite elemente.

Mis on vastavalt C++ kaart?

Kaart on sõnastik sarnane andmestruktuur. See on (võti, väärtus) paari jada, kus iga kordumatu võtmega on seotud ainult üks väärtus. Seda nimetatakse sageli assotsiatiivseks massiiviks. sisse kaart põhiväärtused, mida tavaliselt kasutatakse elementide sortimiseks. Sest kaart Võtme andmetüüp ja väärtus võivad erineda ning seda esitatakse kui.

Milleks hashmapid head on?

HashMap pakub konstantset aja keerukust põhitehte, hanki ja pane jaoks, kui räsifunktsioon on õigesti kirjutatud ja hajutab elemendid õigesti ämbrite vahel. Iteratsioon üle HashMap oleneb võimsusest HashMap ja võtme-väärtuste paaride arv.