科研神器Latex:algorithm2e算法常用技巧小结
科研神器Latex:algorithm2e常用技巧小结
- 一个简单的模板
- 宏包参数的使用
- 基本语法
- 修改Algorithm为中文
- 修改Input、Output为中文
- 自定义算法编号
- 添加算法目录
- 整体效果
最近用latex在overleaf上排版算法,使用了algorithm2e包,碰到的坑简直不是一点半点,官方文档又是全英文的,由于最近受到毕设论文的压迫,压根没有欲望去看,但大海捞针的文章里头真是太难检索到笔者需要的信息了,踩了一大波雷后,终于找到了几个可用的解决方法,LaTeX作为理工科科研人员的必备工具,早晚都得跟它酿酿锵锵,笔者在这里给大家总结一些algorithm2e写算法伪代码常用的小技巧!!!
一个简单的模板
这里先给大家提供一个简单的算法模板:
\documentclass{ctexart}
\usepackage[linesnumbered,ruled,vlined]{algorithm2e}\begin{document}
\begin{algorithm}[H]\SetAlgoLined %显示end\caption{algorithm caption}%算法名字\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\;}}return
\end{algorithm}
\end{document}
效果图如下:
宏包参数的使用
这句代码表示引用宏包algorithm2e
\usepackage[linesnumbered,ruled,vlined]{algorithm2e}
下面是它的一些常用参数介绍
参数 | 作用 |
---|---|
linesnumbered | 显示行号 |
ruled | 标题显示在上方,不加就默认显示在下方 |
vlined | 代码段中用线连接 |
boxed | 将算法插入在一个盒子里 |
基本语法
代码 | 作用 |
---|---|
\; | 行末添加行号并自动换行 |
\caption{算法名称} | 插入算法名称 |
\KwData输入信息} | 显示“Data:输入信息” |
\KwIn{输入信息} | 显示“Input:输入信息” |
\KwOut{输出信息} | 显示“Output:输出信息” |
\KwResult{输入信息} | 显示“Result:输出信息” |
\For{条件}{循环语句} | For循环 |
\If{条件}{肯定语句} | If条件判断 |
\eIf{条件}{肯定语句}{否定语句} | If-else判断语句 |
\While{条件}{肯定语句} | While循环 |
\ForEach{条件}{执行语句} | ForEach遍历 |
\tcc{注释} | 显示“\* 注释 *\” |
\tcp{注释} | 显示“\\注释” |
\SetAlgoLined | 显示“每个结尾的end” |
\LinesNumbered | 显示行号 |
修改Algorithm为中文
使用以下语句可将默认的“Algorithm”修改为中文“算法”
\renewcommand{\algorithmcfname}{算法}
效果图如下:
修改Input、Output为中文
\SetKwInOut{KwIn}{输入}
\SetKwInOut{KwOut}{输出}
效果图如下:
自定义算法编号
\renewcommand{\thealgocf}{3-1}
效果图如下:
添加算法目录
\renewcommand{\listalgorithmcfname}{算\ 法\ 目\ 录}
% 生成算法目录命令
\listofalgorithms
效果图如下:
整体效果
代码如下:
\documentclass{ctexart}
\usepackage[ruled,vlined]{algorithm2e}\begin{document}\renewcommand{\listalgorithmcfname}{算\ 法\ 目\ 录}
% 生成算法目录命令
\listofalgorithms\renewcommand{\algorithmcfname}{算法}
\SetKwInOut{KwIn}{输入}
\SetKwInOut{KwOut}{输出}\begin{algorithm}\renewcommand{\thealgocf}{3-1}\SetAlgoLined %显示end\caption{algorithm caption}%算法名字\KwIn{input parameters A, B, C}%输入参数\KwOut{output result}%输出some description\; %\;用于换行\For{condition}{only if\;\If{condition}{1\;}}return
\end{algorithm}
\begin{algorithm}\renewcommand{\thealgocf}{3-2}\SetAlgoLined %显示end\caption{algorithm caption}%算法名字\KwIn{input parameters A, B, C}%输入参数\KwOut{output result}%输出some description\; %\;用于换行\For{condition}{only if\;\If{condition}{1\;}}return
\end{algorithm}
\end{document}
最后,感觉有被笔者帮助到的友友请一键三连!!!
科研神器Latex:algorithm2e算法常用技巧小结相关推荐
- 《算法笔记》第4章常用技巧
文章目录 常用技巧 1. 散列 2. 递归 2.1 全排列问题 2.2 n皇后问题 2.3 回溯法优化n皇后问题 3. 贪心 3.1 简单贪心 3.2 区间贪心 4. 二分 4.1 二分查找 4.2 ...
- python气象科研学习路线和常用技巧
python气象科研学习路线和重点知识 前言 经过一个学期的气象相关编程,觉得气象常用的一些库在这里总结一下,学习路线是我根据自己经验总结的,有大佬觉得哪里需要补充的可以私我.我也在不断学习,之后有新 ...
- 解题报告:P5960 【模板】差分约束算法(及常用技巧)
P5960 [模板]差分约束算法 差分约束系统 给出 n 个变量和 m 个约束条件,形如 xi−xj≤ckx_i - x_j \leq c_kxi−xj≤ck,你需要求出一组解,使得所有约束条件 ...
- 《算法笔记》第4章常用技巧及排序算法
文章目录 二. 常用技巧 1. 散列 2. 递归 2.1 全排列问题 2.2 n皇后问题 2.3 回溯法优化n皇后问题 3. 贪心 3.1 简单贪心 3.2 区间贪心 4. 二分 4.1 二分查找 4 ...
- LaTeX中一些常用符号及编写技巧
博客中阅读效果更佳哦:LaTeX中一些常用符号及编写技巧 希腊字母 小写形式 代码 大写形式 代码 α \alpha A \Alpha β \beta B \Beta δ \delta Δ \Delt ...
- 计算机任务栏的作用,win7任务栏常用终极技巧小结(以备不时之需)
win7任务栏常用终极技巧小结(以备不时之需) 发布时间:2014-10-10 15:25:31 作者:佚名 我要评论 在win7系统下的任务栏,遇到一些问题是无从下手,下面小编给大家讲解下一 ...
- 算法题常用技巧C++
刷题常用技巧C++ 常用头文件 #include <iostream> #include <cstdio> #include <fstream> #include ...
- SemEval-2020自由文本关系抽取冠军方案解读 (附NLP竞赛常用技巧总结)
本文将回顾平安人寿近期在PaperWeekly × Biendata直播间进行的主题为「SemEval-2020自由文本关系抽取冠军方案解读(附NLP竞赛常用技巧总结)」的技术分享,由平安人寿AI团队 ...
- 直播 | SemEval-2020自由文本关系抽取冠军方案解读(附NLP竞赛常用技巧总结)
「PW Live」是由 PaperWeekly 和 biendata 共同发起的学术直播间,旨在帮助更多的青年学者宣传其最新科研成果.我们一直认为,单向地输出知识并不是一个最好的方式,而有效地反馈和交 ...
最新文章
- 黑盒测试之功能分解法
- PTA团体程序设计天梯赛-L2-021 点赞狂魔
- 实践作业4:Web测试实践(小组作业)每日任务记录3
- php中的冒号应用,php中双冒号的应用
- 通用Excel文件导出工具类
- PWN-PRACTICE-CTFSHOW-2
- macOS Big Sur正式版发布!Big Sur安装失败?更新时卡住了怎么办?
- 三层架构(命名规则)
- 基于FFMPEG+Python实现大视频分隔+水印+合并片头片尾
- SMOTE算法(处理非平衡数据)
- 10个常见的python面试问题
- matlab 计算函数极值,如何用MATLAB求函数的极值点和最大值
- 注销不想用的Apple ID
- 爬虫--初体验(获取二级网站)
- centos 关于logrotate的使用
- 名帖116 文徵明 小楷《离骚经》
- 怎样在应用中实现自助报表功能
- DATAGUARD备机报ORA-01555错误的问题
- UVA - 12627 Erratic Expansion(分治)
- sublime Text3 编辑器中 ANSI编码的汉字出现乱码