Appearance
如何排版算法(伪代码)?
有以下三种互不兼容的方式。
algorithm2e宏包方式(推荐)
引入宏包时,要加上选项 algochapter 才能按学校要求分章编号,示例如下。
latex
\usepackage[ruled, algochapter]{algorithm2e}使用示例请参考 Algorithms - Overleaf 文档的 The algorithm2e package 一节或者 BIThesis 的测试用例,也可直接查询互联网及人工智能。
📥 报错 file not found?请补装宏包
如果您之前精简了 TeX Live 安装内容,需要补装宏包:
shell
tlmgr install algorithm2e endfloat ifoddpage tocbibindalgorithm宏包 + X 方式
引入algorithm宏包时,要加上选项 chapter 才能按学校要求分章编号,示例如下。
latex
\usepackage[chapter]{algorithm}
\usepackage{algorithmic} % 也可替换为 algpseudocode 或 algcompatible使用示例请参考 Algorithms - Overleaf 文档。
🧓 不推荐
algorithms宏包2009年后就未再更新,有些小问题,我们不推荐使用(除非您已有现成代码)。例如,algorithm环境按H与h/t/b/p方式浮动时,算法内部的行距不同;再比如\IF等命令设计得不好,LaTeX 源代码难以自动缩进。
📏 微调下边线宽度
algorithm环境默认采用float宏包提供的ruled样式,这种样式会在算法内容上下画边线。
然而下边线默认会比上边线细,有部分盲评专家建议改粗。如果你想改粗,请在\usepackage{algorithmic}之后加上以下代码。
latex
\makeatletter
\patchcmd{\fs@ruled}
{\def\@fs@post{\kern2pt\hrule\relax}}
{\def\@fs@post{\kern2pt\hrule height 0pt depth .8pt\relax}}
{}{}
\makeatother参考:
使用模板提供的 algo 环境
这是模板“预定义的数学环境”之一,不额外依赖宏包,但功能有限,基本只支持编号。