هل هناك مزايا لـ map على unordered_map للمفاتيح البسيطة (int, string)؟
مرحبًا بالجميع! أكتب بلغة C++ منذ حوالي عام، وهناك سؤال يقلقني. لنفترض أنني بحاجة لتخزين قاموس حيث المفاتيح هي int أو string. أعلم أن `std::map` مطبَّق كشجرة حمراء-سوداء (O(log n) لكل عملية)، بينما `std::unordered_map` مطبَّق كجدول تجزئة (O(1) في المتوسط). يبدو أن `unordered_map` دائمًا أسرع للمفاتيح البسيطة، وكثيرًا ما أراه يُوصى به للمبتدئين. لكن في StackOverflow صادفت نقاشًا حيث يؤكد مطورون ذوو خبرة أن `map` له مزايا.
حاولت كتابة اختبار صغير:
```cpp
#include