LaTex:算法排版
排版可能需要的包:
usepackage{algorithm} //format of the algorithm
usepackage{algorithmic} //format of the algorithm
usepackage{multirow} //multirow for format of table
usepackage{amsmath}
usepackage{xcolor}
DeclareMathOperator*{argmin}{argmin} //argmin或argmax公式的排版
enewcommand{algorithmicrequire}{ extbf{Input:}} //Use Input in the format of Algorithm
enewcommand{algorithmicensure}{ extbf{Output:}} //UseOutput in the format of Algorithm
排版图片可能需要的包:
usepackage{graphics}
usepackage{graphicx}
usepackage{epsfig}
算法的排版举例:
\begin{algorithm}[htb] %算法的开始
caption{ Framework of ensemble learning for our system.} %算法的标题
label{alg:Framwork} %给算法一个标签,这样方便在文中对算法的引用
\begin{algorithmic}[1] %这个1 表示每一行都显示数字
REQUIRE ~~\ %算法的输入参数:Input
The set of positive samples for current batch, $P_n$;\
The set of unlabelled samples for current batch, $U_n$;\
Ensemble of classifiers on former batches, $E_{n-1}$;
ENSURE ~~\ %算法的输出:Output
Ensemble of classifiers on the current batch, $E_n$;
STATE Extracting the set of reliable negative and/or positive samples $T_n$ from $U_n$ with help of $P_n$; label{code:fram:extract} %算法的一个陈述,对应算法的一个步骤或公式之类的; label{ code:fram:extract }对此行的标记,方便在文中引用算法的某个步骤
STATE Training ensemble of classifiers $E$ on $T_n cup P_n$, with help of data in former batches; label{code:fram:trainbase}
STATE $E_n=E_{n-1}cup E$; label{code:fram:add}
STATE Classifying samples in $U_n-T_n$ by $E_n$; label{code:fram:classify}
STATE Deleting some weak classifiers in $E_n$ so as to keep the capacity of $E_n$; label{code:fram:select}
RETURN $E_n$; %算法的返回值
end{algorithmic}
end{algorithm}
排版效果图:
在文中对算法和算法的某个步骤的引用:Therefore, in step
ef{code:fram:extract} of algorithm
ef{alg:Framwork}, we extract $T_n$, a set of reliable negative samples
1、 For和While循环语句的排版举例
(1) 排版效果图
(2)排版代码
\begin{algorithm}[h]
caption{An example for format For & While Loop in Algorithm}
\begin{algorithmic}[1]
FOR{each $iin [1,9]$}
STATE initialize a tree $T_{i}$ with only a leaf (the root);\
STATE $T=Tigcup T_{i};$\
ENDFOR
FORALL {$c$ such that $cin RecentMBatch(E_{n-1})$} label{code:TrainBase:getc}
STATE $T=T cup PosSample(c)$; label{code:TrainBase:pos}
ENDFOR;
FOR{$i=1$; $i<n$; $i++$ }
STATE $//$ Your source here;
ENDFOR
FOR{$i=1$ to $n$}
STATE $//$ Your source here;
ENDFOR
STATE $//$ Reusing recent base classifiers. label{code:recentStart}
WHILE {$(|E_n| leq L_1 )and( D
eq phi)$}
STATE Selecting the most recent classifier $c_i$ from $D$;
STATE $D=D-c_i$;
STATE $E_n=E_n+c_i$;
ENDWHILE label{code:recentEnd}
end{algorithmic}
end{algorithm}
DeclareMathOperator*{argmin}{argmin} //argmin或argmax公式的排版
\enewcommand{algorithmicrequire}{ extbf{Input:}} //Use Input in the format of Algorithm
\enewcommand{algorithmicensure}{ extbf{Output:}} //UseOutput in the format of Algorithm
这两句话总是报错,这是什么意思,能否解释一下
nice article, keep the posts coming
\begin{algorithmic}[1] %不知[1]是干嘛的?
这个1 表示每一行都显示数字。
thx
很好 不错