如何将 itemize 放入算法中?

如何将 itemize 放入算法中?

我想描述一个算法,这就是我想要使用包的原因algorithm,但我定义的算法不涉及伪代码。相反,它有更多的步骤和数学公式,所以我想使用将其描述为阶段itemize,并在算法中编写普通文本和一些数学方程式。我从类似这样的内容开始,假设它是有效的,但它给出了错误。

\documentclass[a4paper]{paper}

\usepackage{algorithm}
\usepackage{algpseudocode}

\begin{document}

\begin{algorithm}
    \caption{MyAlgo}
    \begin{algorithmic}
        \begin{itemize}
            \item \textbf{Parameters:} $n, t \in \mathbb{N}$, where $t < n$.
        \end{itemize}
    \end{algorithmic}
\end{algorithm}

\end{document}

有什么想法我可以如何在算法中添加项目和一些数学内容?

答案1

algorithmic实际上是列表,所以我建议两种选择之一。首先,使用algorithmicx通过手动设置“阶段标题”:

enter image description here

\documentclass{article}

\usepackage{amsfonts}
\usepackage{algorithm,algpseudocode}

\begin{document}

\begin{algorithm}
  \caption{MyAlgo}
  \begin{algorithmic}[1]
    \Statex \textbullet~\textbf{Parameters:} $n, t \in \mathbb{N}$, where $t < n$.
    \State First step
    \State Second step
    \State \ldots
  \end{algorithmic}
\end{algorithm}

\end{document}

你不必给行编号。我只是用\begin{algorithmic}[1]这么做的。

其次,algorithmic彻底删除环境:

enter image description here

\documentclass{article}

\usepackage{amsfonts}
\usepackage{algorithm}

\begin{document}

\begin{algorithm}
  \caption{MyAlgo}
  \begin{itemize}
    \item \textbf{Parameters:} $n, t \in \mathbb{N}$, where $t < n$.
    \item First step
    \item Second step
    \item \ldots
  \end{itemize}
\end{algorithm}

\end{document}

注意,algpseudocode第二个选项不是必需的。

相关内容