现在的位置: 首页 > 算法 > 正文

三种数据算法结构

2020年01月01日 算法 ⁄ 共 771字 ⁄ 字号 评论关闭

  算法思想有很多,业界公认的常用算法思想有8种,分别是枚举、递推、递归、分治、贪心、试探法、动态迭代和模拟。当然8种只是一个大概的划分,是一个“仁者见仁、智者见智”的问题。

算法处理数据

  其实这些算法都是用来处理数据的,这些被处理的数据必须按照一定的规则进行组织。当这些数据之间存在一种或多种特定关系时,通常将这些关系称为结构。在C语言数据之间一般存在如下3种基本结构。

  线性表中各个数据元素之间是一对一的关系,除了第一个和最后一个数据元素外,其他数据元素都是首尾相接的。因为线性表的逻辑结构简单,便于实现和操作,所以该数据结构在实际应用中被广泛采用。在本节中,将详细讲解线性表的基本知识。

  线性表是一种最基本、最简单、最常用的数据结构。在实际应用中,线性表都是以栈、队列、字符串、数组等特殊线性表的形式来使用的。因为这些特殊线性表都具有自己的特性,所以掌握这些特殊线性表的特性,对于数据运算的可靠性和提高操作效率是至关重要的。

  线性表是一个线性结构,它是一个含有n>=0个节点的有限序列。在节点中,有且仅有一个开始节点没有前驱并有一个后继节点,有且仅有一个终端节点没有后继并有一个前驱节点,其他的节点都有且仅有一个前驱和一个后继节点。通常可以把一个线性表表示成一个线性序列:k1,k2,…,kn,其中k1是开始节点,kn是终端节点。

  1.线性结构的特征

  在编程领域中,线性结构具有如下两个基本特征。

  ①集合中必存在唯一的“第一元素”和唯一的“最后元素”。

  ②除最后元素之外,均有唯一的后继;除第一元素之外,均有唯一的前驱。

  由n(n>=0)个数据元素(节点)a1,a2,…,an组成的有限序列,数据元素的个数n定义为表的长度。当n=0时称为空表,通常将非空的线性表(n>0)记作:(a1,a2,…,an)。数据元素ai(1<=i<=n)没有特殊含义,不必去“剖根问底”地研究它,它只是一个抽象的符号,其具体含义在不同的情况下可以不同。   2.线性表的基本操作过程

  线性表虽然只是一对一的关系,但是其操作功能非常强大,具备了很多操作技能。

  3.线性表的结构特点

  线性表具有如下结构特点。

  ①均匀性:虽然不同数据表的数据元素是各种各样的,但同一线性表的各数据元素必须有相同的类型和长度。

  ②有序性:各数据元素在线性表中的位置只取决于它们的序。数据元素之前的相对位置是线性的,即存在唯一的“第一个”和“最后一个”数据元素,除了第一个和最后一个外,其他元素前面只有一个数据元素直接前趋,后面只有一个直接后继。

  在现实应用中,有两种实现线性表数据元素存储功能的方法,分别是顺序存储结构和链式存储结构。

  结束语:以上就是关于三种数据算法结构的全部内容,更多内容请关注学步园。

抱歉!评论已关闭.