Как и сейчас, существует концепция BiMap и multiMap, но существует ли multiBiMap? так что я имею в виду под этим. В multiMap у вас есть отношение «один ко многим» между K и V, один ключ может быть связан с несколькими значениями, отсюда и название. В бикарте у вас есть пара K, V, которая является двунаправленной, что означает, что вы также можете получить отношение V, K. Как иметь две обычные карты, но синхронизированные. Мне нужна двунаправленная мультикарта, в которой вы сочетаете эти две концепции.
У нас есть MultiBiMap?
Ответы (1)
person
schedule
Я написал нечто подобное некоторое время назад, но мне не нравится тот факт, что у меня было два списка, но это тоже должно работать.
- person AR5HAM; 05.12.2013
Я просто не думаю, что концептуально возможно получить желаемый двунаправленный поиск без поддержки двух мультикарт.
- person gdejohn; 05.12.2013
да, я согласен, но было бы неплохо, если бы это было реализовано и абстрагировано для вас. Вместо того, чтобы писать это самостоятельно. :-)
- person AR5HAM; 24.09.2020
"a"->[1, 2, 3]
,getKeyForValue(2) == "a"
? - person gdejohn   schedule 05.12.2013"a"->[1, 2]
, так и"b"->[2, 3]
, то какой ключ связан со значением2
? - person gdejohn   schedule 05.12.2013"a"->[1, 2]
, и"b"->[2, 3]
, то вам нуженgetInverse(2) == ["a", "b"]
? И вам нужно, чтобы он был изменчивым? - person gdejohn   schedule 05.12.2013