لحلها ، من الملائم استخدام دالة تجزئة تُرجع قيمة فريدة لكل صف (تجزئة).
يحتوي C ++ 11 على ميزة مضمنة للحصول على التجزئة:
التجزئة . نبسب ؛
في المستقبل ، لحساب عدد التجزئات ، من الأفضل استخدام جدول تجزئة الخريطة غير المرتب ، والذي ظهر أيضًا في C ++ 11. يمكنك معرفة المزيد حول استخدام الخريطة في الدورة التدريبية
هياكل البيانات الديناميكية - & gt؛ المصفوفات الترابطية: الخريطة. em>
مثال على الحصول على تجزئة من السلسلة & quot؛ test & quot ؛:
التجزئة & lt؛ سلسلة & gt؛ hash_fn؛
size_t str_hash = hash_fn ( & quot؛ test & quot؛ span>) ؛
cout & lt؛ & lt؛ str_hash؛
ستكون النتيجة: "2949673445" ، لذلك من كل سلسلة فريدة يمكنك الحصول على تجزئة فريدة يمكن استخدامها كمفتاح في & nbsp؛ unordered_map.