2011-01-23 6 views
0

Ceci étant mon premier post sur stackoverflow, alors pardonnez-moi si je pose une question qui a déjà été répondue. Quelqu'un peut-il me diriger vers un bon tutoriel pour m'aider à résoudre les problèmes de grille où nous devons faire ce problème dans le nombre «minimum» d'étapes possibles. Parfois, BFS aide mais n'est pas suffisant pour d'autres problèmes similaires. Merci :)Algorithmes de grille

+1

Bienvenue dans Stack Overflow! Vous obtiendrez de meilleures réponses si vous donnez plus de détails, ce qui rend votre question plus spécifique. – marcog

+0

Cette question est hors sujet pour Stack Overflow. Vous devriez poster votre question sur le site Theoretical Computer Science: http://cstheory.stackexchange.com/ –

+1

@Dan Certainement pas. cstheory est pour les questions de niveau de recherche. Jusqu'à ce que [Practical Algorithms and Data Structures] (http://area51.stackexchange.com/proposals/5120/practical-algorithms-and-data-structures?referrer=Ui8Wpa9dvCjQPozYLE14uw2) se lance, c'est sur le sujet ici. – marcog

Répondre

0

Sans plus d'informations, il est difficile de donner une bonne réponse. Les bons algorithmes dépendent de l'énoncé exact du problème.

Si toute la grille est définie et que tous les bords existent et ont le même poids, le minimum est facilement défini comme la marche de la «diagonale» entre deux points. Aucun algorithme intelligent n'est nécessaire.

Si certaines arêtes existent, ou si les arêtes ont des poids variables qui sont positifs, je suggérerais l'algorithme de Dijkstra. Si certaines arêtes sont négatives, il existe des variantes telles que Bellman-Ford.

De toute façon, vous devez élaborer sur la configuration afin que nous puissions vous aider.

0

Si vous voulez réduire la complexité et l'ordre de la grille, vous pouvez utiliser une courbe de remplissage d'espace, par exemple une courbe en z, une courbe d'hilbert ou une courbe d'angle.