Мне было интересно, знает ли кто-нибудь хороший способ хранения данных, чтобы они индексировались двумя ключами.По сути, мне нужно что-то вроде таблицы (верхняя строка - это key1, левый столбец - это key2, буквы - это значения, возвращаемые при индексации):
[ ] [1] [2] [3] [4]
[1] [A] [B] [C] [D]
[2] [B] [E] [F] [G]
[3] [C] [F] [H] [I]
[4] [D] [G] [I] [J]
Я мог бы легко реализовать это как многомерный массив, но так какполовина таблицы всегда идентична, это казалось излишним.До сих пор лучшее решение, которое я могу придумать, включает в себя двухмерный список, где второе измерение имеет переменную длину, в то время как первый или два больших ключа должны быть проиндексированы первыми.Это превращает таблицу в:
[ ] [1] [2] [3] [4]
[1] [A]
[2] [B] [E]
[3] [C] [F] [H]
[4] [D] [G] [I] [J]
У кого-нибудь есть идеи получше?
Редактировать: Возможно, я нашел решение самостоятельно.Смотрите комментарии.