C++ Maps
در C++، Map یکی از ساختارهای دادهای STL است که برای نگهداری دادهها به صورت کلید-مقدار (Key-Value) استفاده میشود.
هر کلید در Map یکتا (Unique) است و مقدار مربوط به آن را میتوان به راحتی جستجو، اضافه یا حذف کرد.
🔹 1️⃣ ایجاد Map
📌 خروجی:
Map به صورت خودکار مرتب بر اساس کلید است و کلیدها تکراری نمیشوند.
🔹 2️⃣ اضافه کردن و تغییر مقدار
-
m[key]
→ اضافه یا بروزرسانی مقدار -
insert({key, value})
→ اضافه کردن فقط در صورت نبودن کلید
🔹 3️⃣ حذف عناصر
🔹 4️⃣ جستجو در Map
-
find(key)
→ اگر کلید موجود باشد iterator برمیگرداند، در غیر این صورتm.end()
-
جستجو در Map سریع است (
O(log n)
با استفاده از Red-Black Tree)
🔹 5️⃣ اندازه و وضعیت
🔹 6️⃣ Map با ترتیب نزولی
📌 خروجی:
🔹 7️⃣ نکات کلیدی
-
Map مجموعهای از کلید-مقدار است که کلیدها یکتا و مرتب هستند.
-
اضافه، حذف و جستجو سریع (
O(log n)
). -
برای دیتابیس کوچک، شمارش فراوانی، ذخیرهسازی داده با کلید یکتا کاربرد دارد.
-
اگر ترتیب اهمیتی نداشته باشد، میتوان از
unordered_map
استفاده کرد (O(1)
تقریبی).
💡 خلاصه:
Map در C++ برای نگهداری دادهها به صورت کلید-مقدار استفاده میشود. با توابع insert
, erase
, find
, size
, empty
میتوان عناصر را مدیریت کرد. Map برای جستجوی سریع، ذخیره داده با کلید یکتا و مرتبسازی خودکار بر اساس کلید کاربرد دارد.