У меня возникли проблемы с тем, как ссылаться на алгоритм, созданный с помощью algorithm2e
. Для своих рисунков я использую:
\begin{figure}
\includegraphics{...}
\caption{Test Caption.}
\label{fig:test_label}
\end{figure}
и ссылка с \Cref{fig:test_label}
(использованием пакета cleveref
). Все работает отлично.
Однако, похоже, это не работает с algortihm2e
:
\begin{algorithm}
\For{$b\gets 0$ \KwTo $B- 1$}{
...
}
\caption{Test Caption}
\label{alg:test_label}
\end{algorithm}
и затем выполнение \Cref{alg:test_label}
результатов в ??
. Я хотел бы иметь что-то похожее на Figure 1
, т.е. Algorithm 1
или Alg. 1
.
Как правильно ссылаться на алгоритм, созданный с помощью algorithm2e
?
Спасибо!
ПРАВКА: При дальнейшем рассмотрении я заметил, что цифры на самом деле отображаются, но слово Algorithm
отсутствует: ?? 1
, ?? 2
,...
решение1
Я озадачен вашим утверждением, что
Однако, похоже, это не работает с algortihm2e.
Конечно, следующая минималистская тестовая программа
\documentclass{article}
\usepackage{algorithm2e,cleveref}
\begin{document}
\begin{algorithm}
\centering\dots \caption{Test a}\label{alg:a}
\end{algorithm}
\begin{algorithm}
\centering\dots \caption{Test b}\label{alg:b}
\end{algorithm}
\Cref{alg:b}, \cref{alg:a,alg:b}.
\end{document}
после двойной компиляции получается такой результат:
Однако не забудьте включить пакетalgorithm2e
до cleveref
, в противном случае вы получите: