Wolfram 언어

그래프와 네트워크

기사의 여행

버전 11은 FindHamiltonianPath를 사용하여 경로, 폐로, 과정을 요구하는 기능의 확장을 가져왔습니다. 기사를 이동시켜, 체스판의 모든 칸을 1회씩 이동시키는 나이트 투어를 구합니다.

전체 Wolfram 언어 입력 표시하기
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]=
동영상 작동
동영상 정지

관련 예제

de en es fr ja pt-br ru zh