существует ли обычно используемая структура данных для многоключевых данных? например (ключ1, ключ2, ..., ключN) -> значение. Раньше я использовал словари словарей (в c #), а затем написал свою собственную оболочку, чтобы синтаксис выглядел немного лучше. но, похоже, мне все еще нужно написать обертку для каждого N-словаря, где N - это количество ключей, поскольку я должен определить вложенную структуру словаря в коде.
при условии, что я использую c #, существует ли структура данных, которая лучше инкапсулирует этот вид использования и может содержать произвольное количество ключей с производительностью поиска, подобной хеш-таблице? Я не могу просто объединить все ключи в один уникальный ключ, потому что мне нужно иметь возможность сделать что-то вроде
foreach key2 in data[key1]
foreach key3 in data[key1][key2]
foreach key4 in data[key1][key2][key3]