我想描述一个算法,这就是我想要使用包的原因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
通过手动设置“阶段标题”:
\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
彻底删除环境:
\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
第二个选项不是必需的。