diff --git a/chapter01.tex b/chapter01.tex index 015aa88..2abce8b 100644 --- a/chapter01.tex +++ b/chapter01.tex @@ -778,7 +778,9 @@ n! & = & n \cdot (n-1)! \\ \index{Fibonacci number} -The \key{Fibonacci numbers}\footnote{Fibonacci (c. 1175--1250) was an Italian mathematician.} arise in many situations. +The \key{Fibonacci numbers} +%\footnote{Fibonacci (c. 1175--1250) was an Italian mathematician.} +arise in many situations. They can be defined recursively as follows: \[ \begin{array}{lcl} diff --git a/chapter02.tex b/chapter02.tex index 7b84efa..f7c907b 100644 --- a/chapter02.tex +++ b/chapter02.tex @@ -282,7 +282,7 @@ no polynomial algorithm is known, i.e., nobody knows how to solve them efficiently. \key{NP-hard} problems are an important set of problems for which no polynomial algorithm -is known\footnote{A classic book on this topic is +is known\footnote{A classic book on the topic is M. R. Garey's and D. S. Johnson's \emph{Computers and Intractability: A Guide to the Theory of NP-Completeness} \cite{gar79}.}. @@ -357,7 +357,7 @@ time and even in $O(n)$ time. Given an array of $n$ integers $x_1,x_2,\ldots,x_n$, our task is to find the \key{maximum subarray sum}\footnote{J. Bentley's -book \emph{Programming Pearls} \cite{ben86} made this problem popular.}, i.e., +book \emph{Programming Pearls} \cite{ben86} made the problem popular.}, i.e., the largest possible sum of numbers in a contiguous region in the array. The problem is interesting when there may be @@ -474,7 +474,7 @@ After this change, the time complexity is $O(n^2)$. \subsubsection{Algorithm 3} Surprisingly, it is possible to solve the problem -in $O(n)$ time\footnote{In \cite{ben86}, this linear algorithm +in $O(n)$ time\footnote{In \cite{ben86}, this linear-time algorithm is attributed to J. B. Kadene, and the algorithm is sometimes called \index{Kadene's algorithm} \key{Kadene's algorithm}.}, which means that we can remove one more loop. diff --git a/chapter07.tex b/chapter07.tex index f8edc7c..81ab5bc 100644 --- a/chapter07.tex +++ b/chapter07.tex @@ -984,9 +984,10 @@ $2^m$ distinct rows and the time complexity is $O(n 2^{2m})$. As a final note, there is also a surprising direct formula -for calculating the number of tilings\footnote{Surprisingly, -this formula was discovered independently -by \cite{kas61} and \cite{tem61} in 1961.}: +for calculating the number of tilings: +% \footnote{Surprisingly, +% this formula was discovered independently +% by \cite{kas61} and \cite{tem61} in 1961.}: \[ \prod_{a=1}^{\lceil n/2 \rceil} \prod_{b=1}^{\lceil m/2 \rceil} 4 \cdot (\cos^2 \frac{\pi a}{n + 1} + \cos^2 \frac{\pi b}{m+1})\] This formula is very efficient, because it calculates the number of tilings in $O(nm)$ time, diff --git a/list.tex b/list.tex index e0d0669..b7f34d7 100644 --- a/list.tex +++ b/list.tex @@ -198,10 +198,10 @@ Efficient randomized pattern-matching algorithms. \emph{IBM Journal of Research and Development}, 31(2):249--260, 1987. -\bibitem{kas61} - P. W. Kasteleyn. - The statistics of dimers on a lattice: I. The number of dimer arrangements on a quadratic lattice. - \emph{Physica}, 27(12):1209--1225, 1961. +% \bibitem{kas61} +% P. W. Kasteleyn. +% The statistics of dimers on a lattice: I. The number of dimer arrangements on a quadratic lattice. +% \emph{Physica}, 27(12):1209--1225, 1961. \bibitem{knu982} D. E. Knuth. @@ -296,10 +296,10 @@ Finding biconnected componemts and computing tree functions in logarithmic parallel time. \emph{25th Annual Symposium on Foundations of Computer Science}, 12--20, 1984. -\bibitem{tem61} - H. N. V. Temperley and M. E. Fisher. - Dimer problem in statistical mechanics -- an exact result. - \emph{Philosophical Magazine}, 6(68):1061--1063, 1961. +% \bibitem{tem61} +% H. N. V. Temperley and M. E. Fisher. +% Dimer problem in statistical mechanics -- an exact result. +% \emph{Philosophical Magazine}, 6(68):1061--1063, 1961. \bibitem{war23} H. C. von Warnsdorf.