Some fixes
This commit is contained in:
parent
25c948597e
commit
8d55dd7b61
|
@ -928,7 +928,7 @@ Google Code Jam and Yandex.Algorithm.
|
||||||
Of course, companies also use those contests for recruiting:
|
Of course, companies also use those contests for recruiting:
|
||||||
performing well in a contest is a good way to prove one's skills.
|
performing well in a contest is a good way to prove one's skills.
|
||||||
|
|
||||||
\section{Books}
|
\section{Resources}
|
||||||
|
|
||||||
\subsubsection{Competitive programming books}
|
\subsubsection{Competitive programming books}
|
||||||
|
|
||||||
|
@ -937,12 +937,11 @@ concentrate on competitive programming and algorithmic problem solving:
|
||||||
|
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item S. Halim and F. Halim:
|
\item S. Halim and F. Halim:
|
||||||
\emph{Competitive Programming 3: The New Lower Bound of Programming Contests}, 2013
|
\emph{Competitive Programming 3: The New Lower Bound of Programming Contests} \cite{hal13}
|
||||||
\item S. S. Skiena and M. A. Revilla:
|
\item S. S. Skiena and M. A. Revilla:
|
||||||
\emph{Programming Challenges: The Programming Contest Training Manual},
|
\emph{Programming Challenges: The Programming Contest Training Manual} \cite{ski03}
|
||||||
Springer, 2003
|
\item K. Diks et al.: \emph{Looking for a Challenge? The Ultimate Problem Set from
|
||||||
\item \emph{Looking for a Challenge? The Ultimate Problem Set from
|
the University of Warsaw Programming Competitions} \cite{dik12}
|
||||||
the University of Warsaw Programming Competitions}, 2012
|
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
The first two books are intended for beginners,
|
The first two books are intended for beginners,
|
||||||
|
@ -956,9 +955,9 @@ Some good books are:
|
||||||
|
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item T. H. Cormen, C. E. Leiserson, R. L. Rivest and C. Stein:
|
\item T. H. Cormen, C. E. Leiserson, R. L. Rivest and C. Stein:
|
||||||
\emph{Introduction to Algorithms}, MIT Press, 2009 (3rd edition)
|
\emph{Introduction to Algorithms} \cite{cor09}
|
||||||
\item J. Kleinberg and É. Tardos:
|
\item J. Kleinberg and É. Tardos:
|
||||||
\emph{Algorithm Design}, Pearson, 2005
|
\emph{Algorithm Design} \cite{kle05}
|
||||||
\item S. S. Skiena:
|
\item S. S. Skiena:
|
||||||
\emph{The Algorithm Design Manual}, Springer, 2008 (2nd edition)
|
\emph{The Algorithm Design Manual} \cite{ski08}
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
|
@ -103,8 +103,12 @@ is 6, the greedy algorithm produces the solution
|
||||||
$4+1+1$ while the optimal solution is $3+3$.
|
$4+1+1$ while the optimal solution is $3+3$.
|
||||||
|
|
||||||
It is not known if the general coin problem
|
It is not known if the general coin problem
|
||||||
can be solved using any greedy algorithm.
|
can be solved using any greedy algorithm\footnote{However, it is possible
|
||||||
|
to \emph{check} in polynomial time
|
||||||
|
if the greedy algorithm presented in this chapter works for
|
||||||
|
a given set of coins \cite{pea05}.}.
|
||||||
However, as we will see in Chapter 7,
|
However, as we will see in Chapter 7,
|
||||||
|
in some cases,
|
||||||
the general problem can be efficiently
|
the general problem can be efficiently
|
||||||
solved using a dynamic
|
solved using a dynamic
|
||||||
programming algorithm that always gives the
|
programming algorithm that always gives the
|
||||||
|
|
|
@ -24,7 +24,9 @@ for finding shortest paths.
|
||||||
|
|
||||||
\index{Bellman–Ford algorithm}
|
\index{Bellman–Ford algorithm}
|
||||||
|
|
||||||
The \key{Bellman–Ford algorithm} \cite{bel58} finds the
|
The \key{Bellman–Ford algorithm}\footnote{The algorithm is named after
|
||||||
|
R. E. Bellman and L. R. Ford who published it independently
|
||||||
|
in 1958 and 1956, respectively \cite{bel58,for56a}.} finds the
|
||||||
shortest paths from a starting node to all
|
shortest paths from a starting node to all
|
||||||
other nodes in the graph.
|
other nodes in the graph.
|
||||||
The algorithm can process all kinds of graphs,
|
The algorithm can process all kinds of graphs,
|
||||||
|
@ -331,7 +333,9 @@ original Bellman–Ford algorithm.
|
||||||
|
|
||||||
\index{Dijkstra's algorithm}
|
\index{Dijkstra's algorithm}
|
||||||
|
|
||||||
\key{Dijkstra's algorithm} \cite{dij59} finds the shortest
|
\key{Dijkstra's algorithm}\footnote{E. W. Dijkstra published the algorithm in 1959 \cite{dij59};
|
||||||
|
however, his original paper does not mention how to implement the algorithm efficiently.}
|
||||||
|
finds the shortest
|
||||||
paths from the starting node to all other nodes,
|
paths from the starting node to all other nodes,
|
||||||
like the Bellman–Ford algorithm.
|
like the Bellman–Ford algorithm.
|
||||||
The benefit in Dijsktra's algorithm is that
|
The benefit in Dijsktra's algorithm is that
|
||||||
|
@ -594,7 +598,9 @@ at most one distance to the priority queue.
|
||||||
|
|
||||||
\index{Floyd–Warshall algorithm}
|
\index{Floyd–Warshall algorithm}
|
||||||
|
|
||||||
The \key{Floyd–Warshall algorithm} \cite{flo62}
|
The \key{Floyd–Warshall algorithm}\footnote{The algorithm
|
||||||
|
is named after R. W. Floyd and S. Warshall
|
||||||
|
who published it independently in 1962 \cite{flo62,war62}.}
|
||||||
is an alternative way to approach the problem
|
is an alternative way to approach the problem
|
||||||
of finding shortest paths.
|
of finding shortest paths.
|
||||||
Unlike the other algorihms in this chapter,
|
Unlike the other algorihms in this chapter,
|
||||||
|
|
45
list.tex
45
list.tex
|
@ -38,12 +38,12 @@
|
||||||
\bibitem{ben86}
|
\bibitem{ben86}
|
||||||
J. Bentley.
|
J. Bentley.
|
||||||
\emph{Programming Pearls}.
|
\emph{Programming Pearls}.
|
||||||
Addison-Wesley, 1986.
|
Addison-Wesley, 1999 (2nd edition).
|
||||||
|
|
||||||
\bibitem{bou01}
|
\bibitem{bou01}
|
||||||
C. L. Bouton.
|
C. L. Bouton.
|
||||||
Nim, a game with a complete mathematical theory.
|
Nim, a game with a complete mathematical theory.
|
||||||
\emph{Annals of Mathematics}, 3(1/4):35--39, 1901.
|
pro \emph{Annals of Mathematics}, 3(1/4):35--39, 1901.
|
||||||
|
|
||||||
% \bibitem{bur97}
|
% \bibitem{bur97}
|
||||||
% W. Burnside.
|
% W. Burnside.
|
||||||
|
@ -54,11 +54,20 @@
|
||||||
Codeforces: On ''Mo's algorithm'',
|
Codeforces: On ''Mo's algorithm'',
|
||||||
\url{http://codeforces.com/blog/entry/20032}
|
\url{http://codeforces.com/blog/entry/20032}
|
||||||
|
|
||||||
|
\bibitem{cor09}
|
||||||
|
T. H. Cormen, C. E. Leiserson, R. L. Rivest and C. Stein.
|
||||||
|
\emph{Introduction to Algorithms}, MIT Press, 2009 (3rd edition).
|
||||||
|
|
||||||
\bibitem{dij59}
|
\bibitem{dij59}
|
||||||
E. W. Dijkstra.
|
E. W. Dijkstra.
|
||||||
A note on two problems in connexion with graphs.
|
A note on two problems in connexion with graphs.
|
||||||
\emph{Numerische Mathematik}, 1(1):269--271, 1959.
|
\emph{Numerische Mathematik}, 1(1):269--271, 1959.
|
||||||
|
|
||||||
|
\bibitem{dik12}
|
||||||
|
K. Diks et al.
|
||||||
|
\emph{Looking for a Challenge? The Ultimate Problem Set from
|
||||||
|
the University of Warsaw Programming Competitions}, University of Warsaw, 2012.
|
||||||
|
|
||||||
% \bibitem{dil50}
|
% \bibitem{dil50}
|
||||||
% R. P. Dilworth.
|
% R. P. Dilworth.
|
||||||
% A decomposition theorem for partially ordered sets.
|
% A decomposition theorem for partially ordered sets.
|
||||||
|
@ -104,6 +113,11 @@
|
||||||
Algorithm 97: shortest path.
|
Algorithm 97: shortest path.
|
||||||
\emph{Communications of the ACM}, 5(6):345, 1962.
|
\emph{Communications of the ACM}, 5(6):345, 1962.
|
||||||
|
|
||||||
|
\bibitem{for56a}
|
||||||
|
L. R. Ford.
|
||||||
|
Network flow theory.
|
||||||
|
RAND Corporation, Santa Monica, California, 1956.
|
||||||
|
|
||||||
\bibitem{for56}
|
\bibitem{for56}
|
||||||
L. R. Ford and D. R. Fulkerson.
|
L. R. Ford and D. R. Fulkerson.
|
||||||
Maximal flow through a network.
|
Maximal flow through a network.
|
||||||
|
@ -152,7 +166,9 @@
|
||||||
% On representatives of subsets.
|
% On representatives of subsets.
|
||||||
% \emph{Journal London Mathematical Society} 10(1):26--30, 1935.
|
% \emph{Journal London Mathematical Society} 10(1):26--30, 1935.
|
||||||
|
|
||||||
On representatives of subsets. J. London Math. Soc, 10(1), 26-30.
|
\bibitem{hal13}
|
||||||
|
S. Halim and F. Halim.
|
||||||
|
\emph{Competitive Programming 3: The New Lower Bound of Programming Contests}, 2013.
|
||||||
|
|
||||||
\bibitem{hel62}
|
\bibitem{hel62}
|
||||||
M. Held and R. M. Karp.
|
M. Held and R. M. Karp.
|
||||||
|
@ -198,6 +214,10 @@
|
||||||
Efficient randomized pattern-matching algorithms.
|
Efficient randomized pattern-matching algorithms.
|
||||||
\emph{IBM Journal of Research and Development}, 31(2):249--260, 1987.
|
\emph{IBM Journal of Research and Development}, 31(2):249--260, 1987.
|
||||||
|
|
||||||
|
\bibitem{kle05}
|
||||||
|
J. Kleinberg and É. Tardos.
|
||||||
|
\emph{Algorithm Design}, Pearson, 2005.
|
||||||
|
|
||||||
% \bibitem{kas61}
|
% \bibitem{kas61}
|
||||||
% P. W. Kasteleyn.
|
% P. W. Kasteleyn.
|
||||||
% The statistics of dimers on a lattice: I. The number of dimer arrangements on a quadratic lattice.
|
% The statistics of dimers on a lattice: I. The number of dimer arrangements on a quadratic lattice.
|
||||||
|
@ -247,6 +267,11 @@
|
||||||
% \emph{Sitzungsberichte des deutschen naturwissenschaftlich-medicinischen Vereines
|
% \emph{Sitzungsberichte des deutschen naturwissenschaftlich-medicinischen Vereines
|
||||||
% für Böhmen "Lotos" in Prag. (Neue Folge)}, 19:311--319, 1899.
|
% für Böhmen "Lotos" in Prag. (Neue Folge)}, 19:311--319, 1899.
|
||||||
|
|
||||||
|
\bibitem{pea05}
|
||||||
|
D. Pearson.
|
||||||
|
A polynomial-time algorithm for the change-making problem.
|
||||||
|
\emph{Operations Research Letters}, 33(3):231--234, 2005.
|
||||||
|
|
||||||
\bibitem{pri57}
|
\bibitem{pri57}
|
||||||
R. C. Prim.
|
R. C. Prim.
|
||||||
Shortest connection networks and some generalizations.
|
Shortest connection networks and some generalizations.
|
||||||
|
@ -271,6 +296,15 @@
|
||||||
A strong-connectivity algorithm and its applications in data flow analysis.
|
A strong-connectivity algorithm and its applications in data flow analysis.
|
||||||
\emph{Computers \& Mathematics with Applications}, 7(1):67--72, 1981.
|
\emph{Computers \& Mathematics with Applications}, 7(1):67--72, 1981.
|
||||||
|
|
||||||
|
\bibitem{ski08}
|
||||||
|
S. S. Skiena.
|
||||||
|
\emph{The Algorithm Design Manual}, Springer, 2008 (2nd edition).
|
||||||
|
|
||||||
|
\bibitem{ski03}
|
||||||
|
S. S. Skiena and M. A. Revilla.
|
||||||
|
\emph{Programming Challenges: The Programming Contest Training Manual},
|
||||||
|
Springer, 2003.
|
||||||
|
|
||||||
\bibitem{spr35}
|
\bibitem{spr35}
|
||||||
R. Sprague.
|
R. Sprague.
|
||||||
Über mathematische Kampfspiele.
|
Über mathematische Kampfspiele.
|
||||||
|
@ -306,6 +340,11 @@
|
||||||
\emph{Des Rösselsprunges einfachste und allgemeinste Lösung}.
|
\emph{Des Rösselsprunges einfachste und allgemeinste Lösung}.
|
||||||
Schmalkalden, 1823.
|
Schmalkalden, 1823.
|
||||||
|
|
||||||
|
\bibitem{war62}
|
||||||
|
S. Warshall.
|
||||||
|
A theorem on boolean matrices.
|
||||||
|
\emph{Journal of the ACM}, 9(1):11--12, 1962.
|
||||||
|
|
||||||
% \bibitem{zec72}
|
% \bibitem{zec72}
|
||||||
% E. Zeckendorf.
|
% E. Zeckendorf.
|
||||||
% Représentation des nombres naturels par une somme de nombres de Fibonacci ou de nombres de Lucas.
|
% Représentation des nombres naturels par une somme de nombres de Fibonacci ou de nombres de Lucas.
|
||||||
|
|
Loading…
Reference in New Issue