Knowledge

Multimap

Source 📝

33: 187:
In a student enrollment system, where students may be enrolled in multiple classes simultaneously, there might be an association for each enrollment of a student in a course, where the key is the student ID and the value is the course ID. If a student is enrolled in three courses, there will be three
191:
The index of a book may report any number of references for a given index term, and thus may be coded as a multimap from index terms to any number of reference locations or pages.
486: 465: 444: 874: 550: 494: 156:
in which more than one value may be associated with and returned for a given key. Both map and multimap are particular cases of
844: 287:. It also provides a MultiValueMap implementing class that makes a MultiMap out of a Map object and a type of Collection. 97: 783: 234: 116: 69: 426: 573: 230: 167: 76: 578: 515: 395: 373: 238: 54: 543: 652: 913: 333: 83: 908: 657: 640: 284: 269: 856: 623: 618: 157: 613: 253: 223: 164: 65: 50: 409: 647: 606: 536: 887: 864: 43: 869: 669: 175: 795: 750: 712: 735: 197:
may have multiple values associated with a single field. This is commonly generated when a
17: 8: 778: 763: 628: 588: 153: 90: 697: 596: 150: 720: 305:
class that can be used to create a multimap. The user can instantiate the class as
171: 130: 740: 682: 387: 324:
implements a hash table where it's possible to store multiple values for a key.
832: 810: 635: 559: 471: 450: 280: 902: 805: 702: 687: 365: 290: 21: 800: 725: 194: 788: 692: 336:
programming language's API also provides Multimap and implementations.
246: 16:
This article is about the data type. For the mathematical concept, see
730: 677: 202: 32: 827: 773: 345: 198: 528: 822: 768: 205:
or selections to be chosen in response to a single form element.
817: 758: 317: 219: 161: 839: 293:
provides a Multimap interface and implementations of it.
410:"Working Draft, Standard for Programming Language C++" 348:
for the case where same item can appear several times
388:"hash_multimap<Key, HashFcn, EqualKey, Alloc>" 170:). Often the multimap is implemented as a map with 57:. Unsourced material may be challenged and removed. 900: 245:container, which implements a multimap using a 283:Collections provides a MultiMap interface for 544: 392:Standard Template Library Programmer's Guide 370:Standard Template Library Programmer's Guide 366:"multimap<Key, Data, Compare, Alloc>" 551: 537: 117:Learn how and when to remove this message 901: 532: 188:associations containing the same key. 55:adding citations to reliable sources 26: 558: 516:"Scala.collection.mutable.MultiMap" 209: 13: 14: 925: 235:self-balancing binary search tree 233:for the sorted multimap using a 31: 487:"Interface Multimap<K,V>" 470:Commons Collections 3.2.2 API, 449:Commons Collections 3.2.2 API, 268:Quiver provides a Multimap for 42:needs additional citations for 20:. For the mapping website, see 508: 479: 458: 437: 419: 402: 396:Silicon Graphics International 380: 374:Silicon Graphics International 358: 241:'s STL extension provides the 1: 352: 307:collections.defaultdict(list) 260:for the unordered multimap. 7: 875:Directed acyclic word graph 641:Double-ended priority queue 339: 320:'s standard library module 181: 149:) is a generalization of a 10: 930: 15: 883: 855: 749: 711: 668: 587: 566: 296: 254:Standard Template Library 224:Standard Template Library 165:Standard Template Library 607:Retrieval Data Structure 327: 312: 151:map or associative array 888:List of data structures 865:Binary decision diagram 303:collections.defaultdict 275: 263: 870:Directed acyclic graph 214: 466:"Class MultiValueMap" 736:Unrolled linked list 445:"Interface MultiMap" 51:improve this article 18:Multivalued function 914:Abstract data types 784:Self-balancing tree 178:as the map values. 909:Associative arrays 764:Binary search tree 629:Double-ended queue 301:Python provides a 258:unordered_multimap 160:(for example, see 154:abstract data type 896: 895: 698:Hashed array tree 597:Associative array 491:Guava Library 2.0 252:As of C++11, the 127: 126: 119: 101: 921: 721:Association list 553: 546: 539: 530: 529: 524: 523: 520:Scala stable API 512: 506: 505: 503: 502: 493:. Archived from 483: 477: 476: 462: 456: 455: 441: 435: 434: 423: 417: 416: 414: 406: 400: 399: 384: 378: 377: 362: 323: 308: 304: 259: 244: 229: 210:Language support 201:allows multiple 137:(sometimes also 131:computer science 122: 115: 111: 108: 102: 100: 59: 35: 27: 929: 928: 924: 923: 922: 920: 919: 918: 899: 898: 897: 892: 879: 851: 745: 741:XOR linked list 707: 683:Circular buffer 664: 583: 562: 560:Data structures 557: 527: 514: 513: 509: 500: 498: 485: 484: 480: 464: 463: 459: 443: 442: 438: 431:Quiver API docs 425: 424: 420: 415:. p. 7807. 412: 408: 407: 403: 386: 385: 381: 364: 363: 359: 355: 342: 330: 321: 315: 306: 302: 299: 278: 266: 257: 242: 227: 217: 212: 184: 147:multidictionary 123: 112: 106: 103: 60: 58: 48: 36: 25: 12: 11: 5: 927: 917: 916: 911: 894: 893: 891: 890: 884: 881: 880: 878: 877: 872: 867: 861: 859: 853: 852: 850: 849: 848: 847: 837: 836: 835: 833:Hilbert R-tree 830: 825: 815: 814: 813: 811:Fibonacci heap 808: 803: 793: 792: 791: 786: 781: 779:Red–black tree 776: 771: 761: 755: 753: 747: 746: 744: 743: 738: 733: 728: 723: 717: 715: 709: 708: 706: 705: 700: 695: 690: 685: 680: 674: 672: 666: 665: 663: 662: 661: 660: 655: 645: 644: 643: 636:Priority queue 633: 632: 631: 621: 616: 611: 610: 609: 604: 593: 591: 585: 584: 582: 581: 576: 570: 568: 564: 563: 556: 555: 548: 541: 533: 526: 525: 507: 478: 472:Apache Commons 457: 451:Apache Commons 436: 418: 401: 379: 356: 354: 351: 350: 349: 341: 338: 329: 326: 314: 311: 298: 295: 281:Apache Commons 277: 274: 265: 262: 216: 213: 211: 208: 207: 206: 192: 189: 183: 180: 125: 124: 39: 37: 30: 9: 6: 4: 3: 2: 926: 915: 912: 910: 907: 906: 904: 889: 886: 885: 882: 876: 873: 871: 868: 866: 863: 862: 860: 858: 854: 846: 843: 842: 841: 838: 834: 831: 829: 826: 824: 821: 820: 819: 816: 812: 809: 807: 806:Binomial heap 804: 802: 799: 798: 797: 794: 790: 787: 785: 782: 780: 777: 775: 772: 770: 767: 766: 765: 762: 760: 757: 756: 754: 752: 748: 742: 739: 737: 734: 732: 729: 727: 724: 722: 719: 718: 716: 714: 710: 704: 703:Sparse matrix 701: 699: 696: 694: 691: 689: 688:Dynamic array 686: 684: 681: 679: 676: 675: 673: 671: 667: 659: 656: 654: 651: 650: 649: 646: 642: 639: 638: 637: 634: 630: 627: 626: 625: 622: 620: 617: 615: 612: 608: 605: 603: 600: 599: 598: 595: 594: 592: 590: 586: 580: 577: 575: 572: 571: 569: 565: 561: 554: 549: 547: 542: 540: 535: 534: 531: 521: 517: 511: 497:on 2013-01-15 496: 492: 488: 482: 474: 473: 467: 461: 453: 452: 446: 440: 432: 428: 422: 411: 405: 397: 393: 389: 383: 375: 371: 367: 361: 357: 347: 344: 343: 337: 335: 325: 319: 310: 294: 292: 288: 286: 282: 273: 271: 261: 256:provides the 255: 250: 248: 243:hash_multimap 240: 236: 232: 226:provides the 225: 221: 204: 200: 196: 193: 190: 186: 185: 179: 177: 173: 169: 166: 163: 159: 155: 152: 148: 144: 140: 136: 132: 121: 118: 110: 107:February 2022 99: 96: 92: 89: 85: 82: 78: 75: 71: 68: –  67: 63: 62:Find sources: 56: 52: 46: 45: 40:This article 38: 34: 29: 28: 23: 19: 658:Disjoint-set 601: 519: 510: 499:. Retrieved 495:the original 490: 481: 469: 460: 448: 439: 430: 421: 404: 391: 382: 369: 360: 331: 316: 300: 291:Google Guava 289: 279: 267: 251: 218: 195:Querystrings 146: 142: 138: 134: 128: 113: 104: 94: 87: 80: 73: 61: 49:Please help 44:verification 41: 22:Multimap.com 801:Binary heap 726:Linked list 203:check boxes 903:Categories 789:Splay tree 693:Hash table 574:Collection 501:2013-01-01 427:"Multimap" 353:References 247:hash table 168:containers 158:containers 77:newspapers 66:"Multimap" 845:Hash tree 731:Skip list 678:Bit array 579:Container 231:container 143:multidict 139:multihash 774:AVL tree 653:Multiset 602:Multimap 589:Abstract 346:Multiset 340:See also 228:multimap 199:web form 182:Examples 135:multimap 828:R+ tree 823:R* tree 769:AA tree 322:Hashtbl 91:scholar 857:Graphs 818:R-tree 759:B-tree 713:Linked 670:Arrays 297:Python 237:, and 93:  86:  79:  72:  64:  751:Trees 624:Queue 619:Stack 567:Types 413:(PDF) 334:Scala 328:Scala 318:OCaml 313:OCaml 172:lists 98:JSTOR 84:books 840:Trie 796:Heap 614:List 332:The 285:Java 276:Java 270:Dart 264:Dart 176:sets 133:, a 70:news 648:Set 239:SGI 222:'s 220:C++ 215:C++ 174:or 162:C++ 145:or 129:In 53:by 905:: 518:. 489:. 468:. 447:. 429:. 394:. 390:. 372:. 368:. 309:. 272:. 249:. 141:, 552:e 545:t 538:v 522:. 504:. 475:. 454:. 433:. 398:. 376:. 120:) 114:( 109:) 105:( 95:· 88:· 81:· 74:· 47:. 24:.

Index

Multivalued function
Multimap.com

verification
improve this article
adding citations to reliable sources
"Multimap"
news
newspapers
books
scholar
JSTOR
Learn how and when to remove this message
computer science
map or associative array
abstract data type
containers
C++
Standard Template Library
containers
lists
sets
Querystrings
web form
check boxes
C++
Standard Template Library
container
self-balancing binary search tree
SGI

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.