LaTeX算法排版 笔记

方式一

  • 需要包含的
\usepackage[noend]{algpseudocode}
\usepackage{algorithmicx,algorithm}
  • 源码
\begin{algorithm}[t]
\caption{algorithm caption} %算法的名字
\hspace*{0.02in} {\bf Input:} %算法的输入, \hspace*{0.02in}用来控制位置,同时利用 \\ 进行换行
input parameters A, B, C\\
\hspace*{0.02in} {\bf Output:} %算法的结果输出
output result
\begin{algorithmic}[1]
\State some description % \State 后写一般语句
\For{condition} % For 语句,需要和EndFor对应
  \State ...
  \If{condition} % If 语句,需要和EndIf对应
    \State ...
  \Else
    \State ...
  \EndIf
\EndFor
\While{condition} % While语句,需要和EndWhile对应
  \State ...
\EndWhile
\State \Return result
\end{algorithmic}
\end{algorithm}

注意

  1. 关键字的大小写问题,否则会出现 Undefined control sequence.
  2. 控制流要前后对应。如果有 While,但没有 EndWhile,否则会出现 Some blocks are not closed。

方式二

  • 需要包含的
\usepackage[ruled]{algorithm2e}
  • 源码
	\begin{algorithm}[H]
		\caption{algorithm caption}%算法名字
		\LinesNumbered %要求显示行号
		\KwIn{input parameters A, B, C}%输入参数
		\KwOut{output result}%输出
		some description\; %\;用于换行
		\For{condition}{
			only if\;
			\If{condition}{
				1\;
			}
		}
		\While{not at end of this document}{
			if and else\;
			\eIf{condition}{
				1\;
			}{
				2\;
			}
		}
		\ForEach{condition}{
			\If{condition}{
				1\;
			}
		}
	\end{algorithm}

方式三

  • 需要包含的
\usepackage[ruled,vlined]{algorithm2e}
  • 源码
	\begin{algorithm}[H]
		\caption{algorithm caption}%算法名字
		\LinesNumbered %要求显示行号
		\KwIn{input parameters A, B, C}%输入参数
		\KwOut{output result}%输出
		some description\; %\;用于换行
		\For{condition}{
			only if\;
			\If{condition}{
				1\;
			}
		}
		\While{not at end of this document}{
			if and else\;
			\eIf{condition}{
				1\;
			}{
				2\;
			}
		}
		\ForEach{condition}{
			\If{condition}{
				1\;
			}
		}
	\end{algorithm}

更多关于表格的信息,参考:

posted @ 2018-01-14 12:39  xinet  阅读(2147)  评论(0编辑  收藏  举报