我的问题是我不知道如何禁用算法编号。我创建了一个算法,其编号为“算法 1”,但我想使用“算法”。
\documentclass{article}
\usepackage[noend]{algorithmic}
% Hide endif .etc
\usepackage{algorithm}
\algsetup{indent=2em}
% Default 1 em
\renewcommand{\algorithmiccomment}[1]{\hspace{2em}// #1}
% Change to C-style comments, though still ugly
\begin{document}
\begin{algorithm}
\caption{MyAlgorithm} \label{alg:MyAlgorithm}
\begin{algorithmic}[1]
% Default no line numbering
\end{algorithmic}
\end{algorithm}
\end{document}
答案1
发布工作示例是个好主意...;-) 现在只有页面引用才有意义:
\documentclass{article}
\usepackage[noend]{algorithmic}
\usepackage{algorithm,caption}
\algsetup{indent=2em}
\renewcommand{\algorithmiccomment}[1]{\hspace{2em}// #1}
\begin{document}
\begin{algorithm}
\caption*{MyAlgorithm} \label{alg:MyAlgorithm}
\begin{algorithmic}[1]
\item foo
\end{algorithmic}
\end{algorithm}
see algorithm on Page~\pageref{alg:MyAlgorithm}
\end{document}
答案2
将计数器设置为无也可以正常工作
\renewcommand{\thealgorithm}{}
答案3
算法名称和编号设置为组合。一般来说,这是在名为 的“浮点宏”内\fnum@<float>
。在algorithm
我们看到这个定义\fnum@algorithm
:
> \fnum@algorithm=macro:
->\fname@algorithm {} \thealgorithm .
我们可以重新定义为仅使用\fname@algorithm
(因此删除\thealgorithm
- 算法编号):
\documentclass{article}
\usepackage{algorithm,algpseudocode}
\makeatletter
\renewcommand{\fnum@algorithm}{\fname@algorithm}
\makeatother
\begin{document}
\begin{algorithm}
\caption{MyAlgorithm}
\begin{algorithmic}[1]
\State An item
\end{algorithmic}
\end{algorithm}
\end{document}
提供类似的界面/选项,使用caption
包裹:
\usepackage{caption}
\DeclareCaptionLabelFormat{algnonumber}{Algorithm}
\captionsetup[algorithm]{labelformat=algnonumber}