Artikel ini adalah rangkaian tutorial struktur data pada C++ untuk persiapan Kompetisi Sains Nasional bidang Komputer 2020. Pada artikel ini kita akan bahas Struktur Data Map. Cek juga artikel sebelumnya tentang struktur data Vector.
TL;DR; Bagi yang agak pingin cepat, bisa baca tutorial di codingannya langsung di link berikut ini https://ideone.com/1Y7b2b
Apa itu struktur data map?
Untuk memudahkan membayangkan, kita bisa lihat langsung contoh bagaimana pemakaian Struktur data Map ini. Map terasa mirip dengan array namun dengan index yang memungkinkan untuk berupa tipe data selain integer (mirip dengan dictionary di Python). Pada map, indeks tersebut diberi nama “key”.

Di C++ ada 2 jenis struktur data map, yakni std::map dan std::unordered_map. Kedua struktur data tersebut secarafungsi bisa dibilang hampir sama, yang membedakan adalah implementasi dibaliknya. Pada std::map digunakan Self-Balancing Tree khususnya Red-Black Tree, sedangkan pada std::unordered_map digunakan hash table.
Perbedaan tersebut memunculkan dua karakteristik unik (sesuai namanya). Pada std::map, data disimpan secara terurut menaik berdasar key nya, sedangkan unordered map tidak terurut. Detailnya bisa dicek di bagian “Iterasi” di bawah.




