Latex使用algorithm2e包写伪代码

这篇具有很好参考价值的文章主要介绍了Latex使用algorithm2e包写伪代码。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

用Latex写伪代码我们需要用到一个包,Algorithm2e,这个工具包的使用手册下载地址为(http://mlg.ulb.ac.be/files/algorithm2e.pdf)CSDN的链接为()

准备

导入该包

\usepackage[ruled,linesnumbered]{algorithm2e}
  • ruled 是让标题显示在上面,否则算法的标题则在下面。
  • linesnumbered 让算法中显示行号。

这种选项在使用手册的第四页到第六页

基本语法

代码 含义
; 行末添加分号并自动换行
\caption{输入信息} 插入标题
\KwData{输入信息} Data:输入信息
\KwIn{输出入信息} In:输入信息
\KwOut{输出信息} Out:输出信息
\KwResult{输出信息} Result:输出信息
\For{条件}{循环语句} for 条件 do
        循环语句
endo
\If{条件}{肯定语句} if 条件 do
        肯定语句
end
\while{条件}{循环语句} while 条件 then
        循环语句
end
\tcc{注释} /* 注释 */
\tcp{注释} // 注释
\elf{条件}{肯定语句}{否定语句} if 条件 then
        肯定语句
else
        否定语句
end
  • 除了\If, \Else, \ElseIf之外,还有\uIf, \lIf, \uElse, \lElse, \uElseIf, \lElseIf等命令,他们的区别在于

  • \If, \Else, \ElseIf都是会以end结尾
    \uIf, \uElse, \uElseIf, 是不以end结尾的块级元素
    \lIf, \lElse, \lElseIf 是不以end为结尾的行内元素
    在If-else结构中,\eIf 自带else(即 if 和 else 共用一个 end),而只是用 \If 和 \Else 的话则会多出一个end给Else。

基本语法在手册的第六页到第九页。手册写的真的非常详细。

示例

我们还是从手册上摘抄几个例子

示例一
\def\SetClass{article}
\documentclass{\SetClass}
\usepackage[linesnumbered,lined,boxed,commentsnumbered]{algorithm2e}
\begin{document}
\IncMargin{1em}
\begin{algorithm}
  \SetKwData{Left}{left}\SetKwData{This}{this}\SetKwData{Up}{up}
  \SetKwFunction{Union}{Union}\SetKwFunction{FindCompress}{FindCompress}
  \SetKwInOut{Input}{input}\SetKwInOut{Output}{output}

  \Input{A bitmap $im$ of size $w\times l$}
  \Output{A partition of the bitmap}
  \BlankLine
  \emph{special treatment of the first line}\;
  \For{$i\leftarrow 2$ \KwTo $l$}{
    \emph{special treatment of the first element of line $i$}\;
    \For{$j\leftarrow 2$ \KwTo $w$}{\label{forins}
      \Left$\leftarrow$ \FindCompress{$Im[i,j-1]$}\;
      \Up$\leftarrow$ \FindCompress{$Im[i-1,]$}\;
      \This$\leftarrow$ \FindCompress{$Im[i,j]$}\;
      \If(\tcp*[h]{O(\Left,\This)==1}){\Left compatible with \This}{\label{lt}
        \lIf{\Left $<$ \This}{\Union{\Left,\This}}
        \lElse{\Union{\This,\Left}}
      }
      \If(\tcp*[f]{O(\Up,\This)==1}){\Up compatible with \This}{\label{ut}
        \lIf{\Up $<$ \This}{\Union{\Up,\This}}
        \tcp{\This is put under \Up to keep tree as flat as possible}\label{cmt}
        \lElse{\Union{\This,\Up}}\tcp*[h]{\This linked to \Up}\label{lelse}
      }
    }
    \lForEach{element $e$ of the line $i$}{\FindCompress{p}}
  }
  \caption{disjoint decomposition}\label{algo_disjdecomp}
\end{algorithm}\DecMargin{1em}
\end{document}

Latex使用algorithm2e包写伪代码

示例二
\def\SetClass{article}
\documentclass{\SetClass}
\usepackage[ruled,linesnumbered]{algorithm2e}
\begin{document}
	\begin{algorithm}
		\caption{Simulation-optimization heuristic}\label{algorithm}
		\KwData{current period $t$, initial inventory $I_{t-1}$, initial capital $B_{t-1}$, demand samples}
		\KwResult{Optimal order quantity $Q^{\ast}_{t}$}
		$r\leftarrow t$\;
		$\Delta B^{\ast}\leftarrow -\infty$\;
		\While{$\Delta B\leq \Delta B^{\ast}$ and $r\leq T$}{$Q\leftarrow\arg\max_{Q\geq 0}\Delta B^{Q}_{t,r}(I_{t-1},B_{t-1})$\;
			$\Delta B\leftarrow \Delta B^{Q}_{t,r}(I_{t-1},B_{t-1})/(r-t+1)$\;
			\If{$\Delta B\geq \Delta B^{\ast}$}{$Q^{\ast}\leftarrow Q$\;
				$\Delta B^{\ast}\leftarrow \Delta B$\;}
			$r\leftarrow r+1$\;}
	\end{algorithm}
\end{document}

Latex使用algorithm2e包写伪代码

示例三

考虑到可能涉及到中文的伪代码,我们写一下中文的

\documentclass{article}
\usepackage[lined,boxed,commentsnumbered]{algorithm2e}
\usepackage{xeCJK}
\begin{document}
	\begin{algorithm}[H]
		\SetAlgoLined
		\KwResult{怎样使用 algorithm \LaTeX2e }
		
		初始化所有寄存器\;
		\While{永不停止}{
			读取寄存器值\;
			\eIf{寄存器值为1}{
				写日志\;
				跳出循环\;
			}{
				读硬盘\;
			}
		}
	\end{algorithm}
\end{document}

Latex使用algorithm2e包写伪代码

其实是一样的,只是部分英文换成了中文。文章来源地址https://www.toymoban.com/news/detail-472361.html

到了这里,关于Latex使用algorithm2e包写伪代码的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 如何使用latex表示微分结果

    在 LaTeX 中表示微分结果,可以使用 \\\"frac{dy}{dx}\\\" 的形式,其中 \\\"y\\\" 表示被微分的函数,\\\"x\\\" 表示关于的变量。 例如,如果你想表示对函数 f(x)=x^2 求导,可以使用下面的代码: 请注意,在 LaTeX 中,微分符号通常使用 \\\"frac{d}{dx}\\\" 的形式,但是也可以使用 \\\"frac{dy}{dx}\\\" 的形式。

    2024年02月14日
    浏览(40)
  • word中使用latex多行公式,矩阵公式

    的引起的那条竖线可以通过backspace或者delete删除

    2024年01月21日
    浏览(35)
  • 利用Overleaf使用Latex插入算法伪代码

    目录 一个简单的例子: 样式一(algorithm2e算法): 样例二(algorithm2e算法):  样式三(algorithm算法):  样式四(algorithm算法): 下面详细讲解algorithm2e算法的使用 1、宏包参数的使用 2、修改Algorithm为中文 3、修改Input、Output为中文 4、自定义算法编号 5、添加算法目录 总

    2024年02月07日
    浏览(44)
  • 在VSCode中使用LaTex,语法检测插件grammarly

    整个文章分为以下几个内容,打 * 的是必须要安装的 latex的下载安装可参考:LaTex(2021)安装教程 VSCode下载:VSCode官网 VSCode的安装非常简单,几乎不需要什么操作 先把中文包下载下来,重启生效 下载 LaTex Workshop 下载完之后,在界面下按下 Ctrl+Shift+P,然后键入“setjson”,点

    2024年02月14日
    浏览(47)
  • 如何在PowerPoint中使用LaTex公式编辑器

    TexLive官网: https://www.tug.org/texlive/ 按照如下步骤依次进行安装 1、 2、 3、 4、 5、下载下来的是一个镜像文件,将其放在纯英文文件夹下,建议为 D:LaTex ,即 D:LaTextexlive2023.iso 6、右键解压缩到当前文件夹,如下图所示 7、右击以管理员模式运行 8、弹出下面窗口后点击“修改

    2024年02月06日
    浏览(50)
  • 干货分享 - MatLab || 与LaTeX的混合使用指南

    目录 1、前言 2、Latex基础 3、Latex尝鲜 4、Latex在MatLab中换行 5、Latex在MatLab中小花招 6、附录1:Tex对照表 7、附录2:常用Tex字符 LaTeX语言作为应用最广泛的Tex格式,Tex这种语言具有简单排版和程序设计的功能。 利用Latex, 即使我们不会排版和程序设计也可以生成复杂的论文规格

    2024年02月05日
    浏览(49)
  • 如何使用LaTeX中的命令【博文生成:ChatGPT 4】

    之前我们使用ChatGPT 3.5生成了一篇 如何使用LaTeX中的命令 的博文(具体链接为https://blog.csdn.net/xovee/article/details/129924763),现在我们试着用ChatGPT 4来生成博文,看看两者的能力的区别。 Prompt: 写一篇3000字的介绍LaTeX中的命令的博客 以下是生成的文章。我大体浏览了一下,生成

    2023年04月19日
    浏览(29)
  • Online LaTeX Editor——Overleaf使用(全网最详细过程)

    目录 1 注册Overleaf 2 新建项目 3 导入LaTeX压缩包  3.1 下载LaTeX源代码 3.2 导入压缩包 4 编译生成 5 项目导出 最近由于课程及学业的需要学习了LaTeX的一些使用方法,以及推荐一款在线编辑LaTeX的工具:Overleaf。下面将详细介绍使用方法,以及一些注意事项。 直接点击下面链接即

    2024年02月07日
    浏览(48)
  • vscode使用latex环境无法编译,是否与anaconda环境冲突

    解决方法有两种: 打开 VS Code 终端并输入 echo $PATH 命令,查看当前环境变量设置。 如果发现 Anaconda路径在前面,可以尝试将其移动到后面,以确保系统能够找到正确的 LaTeX 编译器。 例如,在 Linux 或 macOS 上,可以编辑 .bashrc 文件,并将以下行添加到文件末尾: export PATH=/u

    2024年02月09日
    浏览(35)
  • 因子分析的过程(使用SPSS,提供部分公式的LATEX代码)

    因子分析与主成分分析相类似,同样用于降维,但因子分析具有更好的可解释性(因为相较于主成分分析,因子分析多了一个因子旋转),因此更适合降维,在这个程度上讲,因子分析是主成分分析的推广和扩展 需要进行特别讲述的是这里的因子和试验设计里的因子(或因素

    2024年02月05日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包