Pergunta

I tendo um pouco de um dilema tentando chegar a um bom algoritmo para navegar no gráfico seguinte.

alt texto http://www.archimedesinc.biz/images/StackOverflow/Tree .jpg

Se um usuário escolhe "Mesa 21" como ponto de partida, eu preciso ser capaz de obter o caminho para qualquer outra tabela de que a tabela inicial.

EX: Se os escolhe usuário "Table 21" como um começo e depois adiciona um valor de "Tabela 8", que eu preciso para criar o seguinte caminho " Tabela 21 -> Tabela 12 -> Tabela 9 -> Tabela 6 -> Tabela 8 ", todos os pesos entre as tabelas são os mesmos .

I parecem ter esquecido as minhas habilidades em lidar com grafos dirigidos, e não pode pensar de um bom algoritmo. Eu não estou pedindo por uma solução, mas apenas um impulso na direção certa.

Obrigado!

Foi útil?

Solução

em largura de busca vai encontrar um caminho mais curto: http://en.wikipedia.org / wiki / largura-first_search

Outras dicas

Desde que você disse que as bordas são todos o mesmo peso, Dijkstra algoritmo ( meu costume primeira escolha para este tipo de coisa) só vai degradar a amplitude primeira pesquisa assim Eu sugiro usar isso para simplicidade.

Você pode escolher entre uma série de algoritmos para determinar o caminho mais curto. QuickGraph é bom neste tipo de coisa.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top