写论文时,用到一个算法框架,形式如下:
\begin{algorithm}[H]\label{alg.l1}
\caption{算法标题}
\begin{algorithmic}[1]
\STATE \textbf{Input:}初始参数输入
\REPEAT
\STATE 算法步骤语句
\UNTIL{终止条件}
\STATE \textbf{Output:} 输出解
\end{algorithmic}
\end{algorithm}
之后使用ref{alg.l1}引用后,会变成,Algorithm 2, 或Algorithm 3,Algorithm 3.2等情况,取决于我这个算法放在哪个章节之下。我期待的情况应该是显示成Algorithm 1。
最后查到了这篇文章:
部分期刊模板下表格、图片的引用会出现不正确的问题。比如第一张图片定义的label为label{fig1},tex文件中引用ref{fig1},但编译后出现的是Figure 2或是Figure x.x。
解决方法:
在figure(table类似)环境中,先写caption{}再写label{},也就是说,一定要把label{}放在caption{}后面。
所以结合我的情况,以后写文章,figure,table,algorithm环境中(或者其他环境),label{}都写在caption{}之后即可。