CodeBlanks Logo Icon CodeBlanks

std::map

std::map ile sıralı anahtar-değer koleksiyonunu öğrenirsin.

std::map

std::map, anahtar-değer çiftlerini anahtara göre sıralı tutar. İç yapısı kırmızı-siyah ağaçtır (red-black tree). Ekleme ve erişim O(log n)'dir. m[key] = value ile ekler veya güncellersin.

Örnek: std::map<std::string, int> m; m["apple"] = 3; m["pear"] = 5;. Şimdi m.size() 2 döndürür. m["apple"] 3 verir. Anahtarlar sıralıdır; iteration apple, pear sırasını verir. std::string anahtarlar alfabetik sıralanır.

map insertion

m[key] = value anahtar varsa değeri günceller, yoksa yeni çift ekler. m.count(key) anahtar varsa 1, yoksa 0 döndürür.

Örnek: m["apple"] = 3; ekler. Sonra m["apple"] = 10; yazarsan değer 10 olur; yeni çift eklenmez. m.count("apple") 1 döndürür. Bu, bir anahtarın varlığını denetlemenin hızlı yoludur. Sıralı erişim iterator ile: for (auto& p : m) std::cout << p.first;.

Uygulama map ile çalış

std::map<std::string, int> m; oluştur. m["apple"] = 3; ve m["pear"] = 5; ekle. m.size() ve m["apple"]'ı ayrı satırlarda yazdır.

Başlangıç kodu

main.cpp
#include <iostream>
#include <map>
#include <string>

// map oluştur ve iki anahtar-değer ekle

int main() {
    // boyut ve bir değeri yazdır
    return 0;
}

Örnek çözüm

main.cpp
#include <iostream>
#include <map>
#include <string>

int main() {
    std::map<std::string, int> m;
    m["apple"] = 3;
    m["pear"] = 5;
    std::cout << m.size() << std::endl;
    std::cout << m["apple"] << std::endl;
    return 0;
}

Beklenen çıktı

2
3

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Metodu rolüne eşle

Kavram Anlamı
m["key"] = value Ekle/güncelle
m["key"] Değeri oku
size() Öğe sayısı
std::map<std::string,int> Anahtar-değer

2 std::map anahtarları nasıl sıralanır?

main.cpp
std::map<std::string, int> m;
  • Anahtara göre artan Doğru cevap
  • Ekleme sırasına göre
  • Rastgele
  • Değere göre

Açıklama: map anahtarları anahtara göre artan sırada tutulur.

3 map ekleme

Soru
m["apple"] = ____;
Cevap
m["apple"] = 3;

Açıklama: m["apple"] = 3; apple anahtarına 3 değerini atar.

Orta seviye bölümündeki tüm dersler