xiste uma estrutura de dados persistente multimapa bidireciona

m outras palavras, podemos modelar muitos para muitos relacionamentos em uma estrutura de dados persistente com eficiênci

Um par de multimapas unidirecionais foi sugerido. No entanto, não tenho certeza de como isso funcionaria bem para remoção em uma estrutura de dados persistente. Vamos considerar o caso em que temos as chaves 1..4 para os valores "1" .. "4" e digamos que cada uma se refere a todas as outras, portanto, temos dois mapas que parecem muito semelhantes nas duas direções:

{1 => ["2", "3", "4"], 2 => ["1", "3", "4"], ...} {"1" => [2,3 , 4], "2" => [1,3,4], ...}

gora, queremos remover o item 1 completamente do sistema. Isso requer a alteração de um nó no primeiro mapa, mas requer a alteração de n-1 nós no segundo. Pois n na casa dos milhares (o que é provável no caso em que estou considerando isso) não seria caro? Ou um multimapa otimizado para lidar com esse tipo de alteração? É um caso patológico, mas ainda assim ...

Quadtrees parece uma ideia fascinante. Vou pensar um pouco mais sobre iss

questionAnswers(2)

yourAnswerToTheQuestion