Algorithmcx 和数组表示

Algorithmcx 和数组表示

我正在使用包algorithmcxalgpseudocode在论文中描述一种算法。算法中的每个函数都接收一个数值数组/列表,例如{x1, x2, ..., xn}

\documentclass{article}
\usepackage{algorithm}
\usepackage{algorithmicx}
\usepackage{algpseudocode}

\begin{document}

\begin{algorithm}
  \begin{algorithmic}[1]

    \Statex
    \Function{FUN\_NAME}{$\{x_i^j \,|\, i \in A, j \in B \}$}
     ....
    \EndFunction%
  \end{algorithmic}
\end{algorithm}

\end{document}

我不知道值/变量列表是否以正确的方式表示。

我浏览了网络,看是否存在这样一种表示数组的可接受的约定,但没有找到任何示例。

我怎样才能代表他们?

答案1

我认为你可以在三种符号之间进行选择,而没有真正的惯例:

  • 括号(...):在数学中,这是通过坐标列表表示向量的常用方法。此外,与下面的方括号一起,它是矩阵的公认符号。在算法中,向量和矩阵通常都表示为数组。另一方面,它们有时也用于表示元组,这与您想要实现的目标无关;
  • 方括号[...]:许多编程语言中数组(或列表)都用方括号表示。同样,上述矩阵的论点也适用;
  • 括号\{....\}:你应该小心使用它们。括号通常的数学含义是它们表示一组元素,即“无序元素包”。然而,列表是编程语言中表示此类数据结构的常用方法。

我认为你应该使用大括号仅有的如果列表中元素的顺序根本不重要。在任何其他情况下,您都应坚持使用括号或方括号,并优先使用后者。

请记住,没有真正的惯例,所以这纯粹是个人建议。

相关内容