更改算法名称

更改算法名称

我一直在尝试使用这个答案更改算法的标签名称无济于事。我使用以下软件包:

\usepackage{algorithm}
\usepackage{algpseudocode}

这是定义新环境的代码:

\newenvironment{megaalgorithm}[1][htb]{
    \renewcommand{\algorithmcfname}{MegaAlgorithm}% Update algorithm name
   \begin{algorithm}[#1]%
  }{\end{algorithm}}

但后来它告诉我有一个错误:

Latex 错误:\algorithmcfname 未定义

我无法使用algorithm2e前面的例子,因为它破坏了我当前的代码。

答案1

algorithm使用该包时正确的是\ALG@name和 不是\algorithmcfname

因此,你必须将新环境定义为

\makeatletter
\newenvironment{megaalgorithm}[1][htb]{%
    \renewcommand{\ALG@name}{MegaAlgorithm}% Update algorithm name
   \begin{algorithm}[#1]%
  }{\end{algorithm}}
\makeatother

平均能量损失

\documentclass{article}
\usepackage{algorithm}
\usepackage{algpseudocode}

\makeatletter
\newenvironment{megaalgorithm}[1][htb]{%
    \renewcommand{\ALG@name}{MegaAlgorithm}% Update algorithm name
   \begin{algorithm}[#1]%
  }{\end{algorithm}}
\makeatother

\begin{document} 

\begin{megaalgorithm}
\begin{algorithmic}
\State Hello
\end{algorithmic}
\caption{A mega algorithm}
\end{megaalgorithm}

\end{document} 

在此处输入图片描述


algorithm.sty(捆绑包的一部分algorithms)中您可以找到:

\newcommand{\ALG@name}{Algorithm}

\floatname{algorithm}{\ALG@name}

因此,另一个选择是将您的新环境定义为

\newenvironment{megaalgorithm}[1][htb]{%
    \floatname{algorithm}{MegaAlgorithm}% Update algorithm name
   \begin{algorithm}[#1]%
  }{\end{algorithm}}

第一种方法直接取自样式文件,而后者可以在 4.4 小节“自定义”中找到algorithms 文档

相关内容