数据结构是一个来自计算机科学的概念,指的是收集和组织信息的特定方法。所有数据结构都使用有关给定数据段在计算机内存中的位置的信息,以便访问该数据并将其连接到其他数据段。

数据结构在各个信息之间建立了许多不同种类的关系,不同类型的数据结构对于不同的目的更有效,不同类型的数据结构之间的编码难度差别很大。

数组是最简单的数据结构之一,但它仍然是组织信息的强大工具。在数组中,元素被分配为顺序的内存地址,允许使用简单的数学计算非常快速地确定数组中任何项的内存地址,这是一个关键的优势。

可以认为数组存在于任意数量的维中,一维数组可以定义为列表,二维数组可以定义为表,三维数组可以定义为单个单元格的立方体,三维以上的数组也可以存在。

链表是另一种简单但非常重要的数据结构类型,在链表中,每个节点由一个变量组成,该变量包含实际数据和标识链表中下一个元素的信息。因此,只要知道第一个节点的地址,就可以遍历一个链表。

这种类型的数据结构是通用的,因为它有助于动态增长,可以随时轻松地分配新节点。在列表中添加一个包含前一个节点位置的变量,可以在任意方向遍历这种类型的数据结构。

树按照层次结构对节点进行排序,从根节点开始,向下经过多层节点,直到在结构中容纳了所有必要的数据。通常,树中的元素以某种方式排序。树可以实现排序,并可能因此提供对存储数据的更快速的访问,因为每个分支都从需要在链表中进行排序的考虑中消除了整条信息。

哈希表用于确定一个内存地址,在这个地址中,通过使用一个等式将数据转换为内存地址来存储给定的数据段。对于从数组中存储和检索数据来说,它们是一种非常有效的结构。

所有的数据结构都是为了减少计算机为了定位特定信息而必须执行的指令数量而设计的,不同类型的数据适用于不同类型的数据结构,但是大多数现代编程语言都提供了对各种数据结构的支持,或者提供了允许程序员编写自己的数据结构的工具。