Wolfram Language

Graphen und Netzwerke

Das Springerproblem

In Version 11 kann nun die Funktion FindHamiltonianPath genutzt werden, die die Optionen zum Finden von Pfaden, Kreisen und Routen erweitert. Finden Sie eine Route für einen Springer auf einem leeren Schachbrett, auf der dieser jedes Feld genau einmal besucht.

Den kompletten Wolfram Language-Input zeigen
In[1]:=
Click for copyable input
(* draw a checker board *) checkerboard = ArrayPlot[Table[Mod[j + i, 2], {i, 8}, {j, 8}], ColorRules -> {1 -> RGBColor[0, .55, .77], 0 -> RGBColor[.67, .9, .99]}, Frame -> False, DataRange -> {{1, 8}, {1, 8}}]; (* compute knight's tour *) g = KnightTourGraph[8, 8]; tour = FindHamiltonianPath[g]; (* show the tour *) Manipulate[ Show[{checkerboard, HighlightGraph[g, PathGraph[tour[[;; i]]], PlotTheme -> "Marketing", GraphHighlightStyle -> "DehighlightHide", EdgeStyle -> Thickness[.01]]}], {i, 1, Length[tour], 1}, SaveDefinitions -> True]
Out[1]=
Animation abspielen
Abspielung unterbrechen

Verwandte Beispiele

en es fr ja ko pt-br ru zh