多重關連數組

在計算機科學中，多重關連數組（），是一種抽象資料結構，它儲存著(鍵，值)的有序對，和map不同之處在於，多重關連數組的有序對可以重複。通常，多重關連數組是利用在map中使用串列或集合當作值的欄位。這種數據結構包含以下幾種常見操作：
 向關聯數組添加配對
 從關聯數組內刪除配對
 修改關聯數組內的配對
 根據已知的鍵尋找配對

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

 语言支持 

 C++ 
C++的標準模板庫提供利用平衡樹來實作多重關連數組,"multimap<Key, Data, Compare, Alloc>" .  ，且SGI的標準模板庫提供了利用雜湊表hash_multimap "hash_multimap<Key, HashFcn, EqualKey, Alloc>" . 

 Dart 
由Quiver提供。"Multimap" . 

 參見 
 抽象資料型別
 關聯數組
 多重集

 參考文獻 

Category:数组
Category:抽象数据类型