如果我这样使用算法包
\begin{algorithm}[h!]
...insert algorithm here...
\end{algorithm}
我发现我的算法末尾有一行。不详细说了,我想要一个没有结尾行的算法。如何删除算法末尾的行?
下面是我的一个算法的示例:
这是一个最小的工作示例:
\documentclass{article}
\usepackage{algorithm}
\usepackage{algpseudocode}
\begin{document}
\begin{algorithm}[h]
\caption{foo}
\begin{algorithmic}[1]
\State bar
\end{algorithmic}
\end{algorithm}
\end{document}
答案1
这algorithm
捆使用定义algorithm
环境/浮点float
包裹。因此,您可以使用其工具重新设计它。
你可以定义一个新的浮动样式,比如nobottomruled
,删除“后”(规则)构造:
\documentclass{article}
\usepackage{algorithm,algpseudocode}
\makeatletter
\newcommand\fs@nobottomruled{\def\@fs@cfont{\bfseries}\let\@fs@capt\floatc@ruled
\def\@fs@pre{\hrule height.8pt depth0pt \kern2pt}%
\def\@fs@post{}% Formerly \def\@fs@post{\kern2pt\hrule\relax}%
\def\@fs@mid{\kern2pt\hrule\kern2pt}%
\let\@fs@iftopcapt\iftrue}
\makeatother
\floatstyle{nobottomruled}
\restylefloat{algorithm}
\begin{document}
\begin{algorithm}[H]
\caption{foo}
\begin{algorithmic}[1]
\State bar
\end{algorithmic}
\end{algorithm}
\end{document}
答案2
您还可以删除算法的边框,然后手动在算法的行标题上方和下方放置水平线。方法如下:
\documentclass{article}
\usepackage{algorithmic}
\usepackage[plain]{algorithm}
\begin{document}
\begin{algorithm}[h]
\caption{foo}
\begin{algorithmic}[1]
\State bar
\end{algorithmic}
\end{algorithm}
\end{document}