LaTeX中算法有关宏包和命令的使用

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

y umengkk的专栏
加入 \newcommand{\tabincell}[2]{\begin{tabular}{@{}#1@{}}#2\end{tabular}}
命令: \tabincell{c}{aa\\bb}
公式太长,需要分割为两行是:可以用如下方法:
• 宏包首先,需要使用以下宏包,
\usepackage{algorithm}
\usepackage{algorithmic}
• 输入、输出和返回值
此外如果算法有标准的输入和输出,以及返回值,可以使用相应的输入、输出、返回值命令,输入、输出、返回值命令依次分别为:
% 该命令为输入参数说明的命令,至于命令的 "~~",具体作用也不清楚,参考的链接中是这样给的,
\REQUIRE ~~ \\
% 以下命令为输出参数说明的命令
\ENSURE ~~ \\
% 使用返回值格式命令
\RETURN
• 命令重命名
当然,如果不喜欢宏包中默认的命令,则可以使用以下latex命令将原有的默认命令进行重命名,\renewcommand{\algorithmrequire}{\textbf{Input:}}
\renewcommand{\algorithmensure}{\textbf{Output:}}
按照以上两句代码重定义后,就可以用 "Input:" 和 "Output:" 来分别表示输入和输出了。

• 完整例子以及详细说明
以下为一个使用算法的tex 代码例子,
\usepackage{algorithm}
\usepackage{algorithmic}
\begin{algorithm}
\caption{算法的标题}
\label{alg:framwork} % 给算法一个标签,以便其它地方引用该算法
\begin{algorithmic}[1] % 数字 "1" 表示为算法显示行号的时候,每几行显示一个行号,如:"1" 表示每行都显示行号,"2" 表示每两行显示一个行号,也是为了方便其它地方的引用
\REQUIRE ~~\\ % 算法的输入参数说明部分
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 ~~\\ % 算法的输出说明
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}
% 算法的具体描述,也可以给具体的算法行给定标签,方便其它部分对它的引用
\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}
\RETURN $E_n$; % 算法的返回值
\end{algorithmic}
\end{algorithm}
• for 循环的使用例子
例子, for 格式
\FOR {each $i \in [1,9]$}
\STATE initialize a tree $T_{i}$ with only a leaf (the root); \\
\STATE $T = T\bigcup $_{i};$ \\
\ENDFOR
例子2,forall 格式
\FORALL {forall 循环条件} \label{alg:code:tag:1}
\STATE forall 循环体算法伪代码行一 \label{alg:code:tag:2}
\STATE forall 循环体算法伪代码行二 \label{alg:code:tag:3}
\ENDFOR
• while 循环的使用例子
\WHILE {while循环条件}
\STATE while循环体算法伪代码行一
\STATE while 循环体算法伪代码行二
\ENDWHILE
• if
\IF {if条件描述}
\STATE if代码描述一
\STATE if代码描述二
\ENDIF
\ENDIF
• if ... else ...
\IF {if条件描述}
\STATE if伪代码描述一
\STATE if伪代码描述二
\ELSE
\STATE else伪代码描述一
\STATE else伪代码描述二
\ENDIF
• if ... else if ...
\IF {if条件描述}
\STATE if伪代码描述
\ELSIF {elseif条件描述一}
\STATE elseif伪代码描述一
\ELSIF {elseif条件描述二}
\STATE elseif伪代码描述二
\ELSE
\STATE else伪代码描述
\ENDIF
• repeat until ,这里的条件描述,描述的是退出条件,也就是在条件满足时,循环退出
\REPEAT
\STATE 伪代码描述
\UNTIL {条件描述}
• ininite loops,无限循环,循环体中应该是具备退出条件的
\LOOP
\STATE 伪代码描述
\ENDLOOP
• 变量打印
\PRINT 打印内容描述
• 算法部分循环使用总结
\IF {"condition"} "text" \ENDIF
\IF {"condition"} "text" \ELSE "text" \ENDIF
\IF {"condition"} "text" \ELSIF "text" \ELSIF "text" \ELSE "text" \E NDIF
\FOR {"condition"} "text" \ENDFOR
\FORALL {"condition"} "text" \ENDFOR
\WHILE {"condition"} "text" \ENDWHILE
\REPEAT "text" \UNTIL {"condition"}
\LOOP "text" \ENDLOOP。

相关文档
最新文档