本页使用了标题或全文手工转换

多重關連數組

维基百科,自由的百科全书
跳转至: 导航搜索

計算機科學中,多重關連數組英语:multimap),是一種抽象資料結構,它儲存著(鍵,值)的有序對,和map不同之處在於,多重關連數組的有序對可以重複。通常,多重關連數組是利用在map中使用串列集合當作值的欄位。

這種數據結構包含以下幾種常見操作:
  • 向關聯數組添加配對
  • 從關聯數組內刪除配對
  • 修改關聯數組內的配對
  • 根據已知的鍵尋找配對

使用模式[编辑]

  • 當需要對一同一個鍵值儲存大量資料時,可以使用多重關連數組。
  • 舉例來說,在學生選課系統中,一個學生可以選擇多門課程,可以使用多重關連數組,將有序對(學生ID, 課程ID)存入多重關連數組中。

语言支持[编辑]

C++[编辑]

C++標準模板庫提供利用平衡樹來實作多重關連數組,[1] ,且SGI的標準模板庫提供了利用雜湊表hash_multimap [2]

Dart[编辑]

Quiver提供。[3]

參見[编辑]

參考文獻[编辑]

  1. ^ "multimap<Key, Data, Compare, Alloc>".
  2. ^ "hash_multimap<Key, HashFcn, EqualKey, Alloc>".
  3. ^ "Multimap".