ما هو Multimap C ++؟
ما هو Multimap C ++؟

فيديو: ما هو Multimap C ++؟

فيديو: ما هو Multimap C ++؟
فيديو: #12 [STL] - Unordered Map & Unordered Multimap 2024, شهر نوفمبر
Anonim

خرائط متعددة هي حاويات ارتباطية تتكون من عناصر تخزين مكونة من مجموعة من القيمة الرئيسية والقيمة المعينة ، وفقًا لترتيب معين ، وحيث يمكن أن تحتوي العناصر المتعددة على مفاتيح متكافئة.

وبالتالي ، ما هي الخريطة المتعددة في C ++؟

متعدد الخرائط في C ++ عبارة عن حاوية ترابطية مثل خريطة. يقوم بتخزين العناصر داخليًا في زوج القيمة الرئيسية. ولكن على عكس الخريطة التي تخزن المفاتيح الفريدة فقط ، متعدد الخرائط يمكن أن يكون لها مفاتيح مكررة. أيضًا ، فإنه يحتفظ بالعناصر داخليًا بترتيب فرز المفاتيح.

بعد ذلك ، السؤال هو ، ما هو الفرق بين MAP و Multimap في C ++؟ ال خريطة و ال متعدد الخرائط كلاهما حاويات تدير أزواج المفتاح / القيمة كمكونات فردية. الأساسي الفرق بين الاثنان هو ذلك في الخريطة يجب أن تكون المفاتيح فريدة من نوعها ، بينما يجب أن تكون أ متعدد الخرائط تصاريح مكررة المفاتيح.

الى جانب ذلك ، هل Multimap مرتبة C ++؟

متعدد الخرائط :: emplace () in C ++ STL - يُدرج المفتاح وعنصره في ملف متعدد الخرائط وعاء. متعدد الخرائط :: تبدأ () و متعدد الخرائط :: end () in C ++ STL– begin () ترجع مكررًا يشير إلى العنصر الأول في ملف متعدد الخرائط وعاء. متعدد الخرائط :: محو () في C ++ STL- يزيل قيمة المفتاح من ملف متعدد الخرائط.

هل Unordered_map أسرع من الخريطة؟

الأمراض المنقولة جنسيا:: خريطة يُعتقد أنه أبطأ بشكل عام من غير مرتب خرائط ولكن بالتأكيد يمكنك استخدامها إذا كان الوصول المطلوب أمرًا ضروريًا. الأمراض المنقولة جنسيا:: unordered_map يتم تخزينها في جدول تجزئة. هذا يسمح ل أسرع الوصول إلى العناصر استنادًا إلى حساب التجزئة الذي تم إجراؤه على keyvalue.