diff -r 0e591f806290 -r 8a34b2ebc8cc cws/cw03.tex --- a/cws/cw03.tex Tue Dec 03 11:07:09 2019 +0000 +++ b/cws/cw03.tex Mon Jan 27 10:18:13 2020 +0000 @@ -348,8 +348,8 @@ \noindent As you should have seen in the earlier parts, a naive search for tours beyond $8 \times 8$ boards and also searching for closed tours even on small -boards takes too much time. There is a heuristic, called \emph{Warnsdorf's -Rule} that can speed up finding a tour. This heuristic states that a +boards takes too much time. There is a heuristics, called \emph{Warnsdorf's +Rule} that can speed up finding a tour. This heuristics states that a knight is moved so that it always proceeds to the field from which the knight will have the \underline{fewest} onward moves. For example for a knight on field $(1, 3)$, the field $(0, 1)$ has the fewest possible @@ -386,7 +386,7 @@ Warnsdorf’s Rule. That means moves with the fewest legal onward moves should come first (in order to be tried out first). \hfill[1 Mark] -\item[(7)] Implement a \texttt{first\_closed\_tour\_heuristic} +\item[(7)] Implement a \texttt{first\_closed\_tour\_heuristics} function that searches for a single \textbf{closed} tour on a $6\times 6$ board. It should try out onward moves according to @@ -394,13 +394,13 @@ a solution when started in the middle of the board (that is position $(dimension / 2, dimension / 2)$). \hfill[1 Mark] -\item[(8)] Implement a \texttt{first\_tour\_heuristic} function +\item[(8)] Implement a \texttt{first\_tour\_heuristics} function for boards up to $30\times 30$. It is the same function as in (7) but searches for tours (not just closed tours). It might be called with any field on the board as starting field.\\ %You have to be careful to write a - %tail-recursive function of the \texttt{first\_tour\_heuristic} function + %tail-recursive function of the \texttt{first\_tour\_heuristics} function %otherwise you will get problems with stack-overflows.\\ \mbox{}\hfill[1 Mark] \end{itemize}