LaTeX Elsevier 模板中的算法

LaTeX Elsevier 模板中的算法

实际上,我首先以通用 LaTeX 格式编写了算法,并成功完成。我使用了以下算法包:

\usepackage{algorithm,algpseudocode}
\usepackage{algorithmic}
\usepackage{program}
\usepackage{algorithm}

但是当我复制相同的算法代码时Elsvier LaTeX 模板它无法正常工作。请帮助我解决这个问题。我使用的类的格式是elsearticle

\documentclass[review]{elsarticle}
\usepackage{lineno,hyperref}
\bibliographystyle{elsarticle-num}

现在我提供更多信息:代码和输出

\documentclass[review]{elsarticle}
\usepackage{lineno,hyperref}
\modulolinenumbers[5]
\usepackage{graphicx} 
\usepackage[font=small,labelfont=bf]{caption}%do
\usepackage{subcaption}
\usepackage{algpseudocode}
\usepackage{algorithmic}
\begin{algorithm}[h]
\State $a$ is AB valyes, $T$ is dec, $R\textsubscript{Data}$ is NOTHING\;
\State A\textsubscript{Ab} is values\;
\begin{algorithmic}[1]
\State $R\textsubscript{Data} \gets abs \Comment{my name is Xyz}$ \;
\State $L_i \gets $ Labeling my name    \Comment(i=1,2,3)\;
\State $T_{0}\gets R_{Data}$.$T$($start$)\;
\State $T_{end}\gets R_{Data}$.$T$($end$)\;
\Procedure {who} {$A\textsubscript{ab}$, $D\textsubscript{i}$}
          \For {$s\gets A_{ab}(1)$ \TO $D_{Data}(end)$} 
               \If{AB}
                  \State No Matter
               \Else 

                 \State yes $A_{b}$ nothing special
               \EndIf
               \For {$F_{S}\gets 1 \leq 6$}
                    \State $S_{F}\gets F(T_{sw})$
               \EndFor
          \EndFor
\EndProcedure

\Procedure {where}{$A_{ab}$}
                \For {Man}
                   \State Guess where I am
                \EndFor
\EndProcedure
 \caption{STGY}
 \end{algorithmic}
\end{algorithm}

在此处输入图片描述

答案1

嗯,在您给出的代码中存在一些问题:

  1. 首先你没有\begin{document}
  2. \;在一些行末加了一些评论。
  3. 您需要更改\TO\to
  4. 有些$已经失踪。

请参阅以下可编译代码

\documentclass[review]{elsarticle}

\usepackage{lineno}
\modulolinenumbers[5]
\usepackage{graphicx} 
\usepackage[font=small,labelfont=bf]{caption}
\usepackage{subcaption}

\usepackage{algorithm}% <=================http://ctan.org/pkg/algorithms
\usepackage{algpseudocode}% <========== http://ctan.org/pkg/algorithmicx
\usepackage{hyperref} % <===============================================


\begin{document}
\begin{algorithm}
  \begin{algorithmic}[1]
\State $a$ is AB valyes, $T$ is dec, $R\textsubscript{Data}$ is NOTHING%\;
\State $A\textsubscript{Ab}$ is values%\;  % <===========================
\State $R\textsubscript{Data} \gets $ abs \Comment{my name is Xyz} %\;
\State $L_i \gets $ Labeling my name    \Comment(i=1,2,3)%\;
\State $T_{0}\gets R_{Data}$.$T$($start$)%\;
\State $T_{end}\gets R_{Data}$.$T$($end$)%\;
\Procedure {who} {$A\textsubscript{ab}$, $D\textsubscript{i}$}
  \For {$s\gets A_{ab}(1) \to D_{Data}(end)$} % <=======================
    \If{AB}
      \State No Matter
    \Else 
      \State yes $A_{b}$ nothing special
    \EndIf
    \For {$F_{S}\gets 1 \leq 6$}
      \State $S_{F}\gets F(T_{sw})$
    \EndFor
  \EndFor
\EndProcedure

\Procedure {where}{$A_{ab}$}
                \For {Man}
                   \State Guess where I am
                \EndFor
\EndProcedure
 \caption{STGY}\label{STGY}
\end{algorithmic}
\end{algorithm}

\end{document}

结果:

由此产生的算法

顺便说一句:hyperref在您的情况下,该包应该被称为最后一个包。

相关内容