python05--数据结构(P25)

一、结构性数据结构

一个具体的数据结构就是一个二元组

      D = (E,R)

   其中 E 是数据结构 D 的元素集合,而 R∈E * E 是 D 的元素之间的某种关系。

总结出一批特别有用的典型数据结构:

  • 集合结构:其数据元素之间没有需要关注的明确关系,也就是说关系R是空集。

         这样的数据结构也就是其元素的集合,只是把一组数据元素包装成一个整体。这是最简单的一类数据结构。

  • 序列结构(线性结构):其数据元素之间有一种明确的先后关系(顺序关系)。其特点是每个元素只有(最多)一个后继。

         存在一个排位在最前的元素,除了最后的元素外,每个元素都有一个唯一的后继元素,所有元素排列成一个线性序列。关系R就是这里的线性顺序关系。

         序列结构还有一些变形,如循环结构和ρ形结构。

        

         

          圆圈表示数据元素,箭头表示元素之间的关系,说明这种关系是有方向的

  • 层次结构:其数据元素分属于一些不同的层次,一个上层元素可以关联着一个或者多个下层元素,关系R形成一种明确的层次性,只从上层到下层(通常也允许跨层次)。
  • 树形结构:层次结构中最简单的一种关系是树形关系,其特点是在一个属性结构中只有一个最上层数据元素,称为根,其余元素都是根的直接或间接关联的下层元素。

         进一步说,除根元素之外的每个元素,都有且仅有一个上层元素与之关联。

  •  图结构:数据元素之间可以有任意复杂的相互联系。

二、功能性数据结构

  包括栈、队列、优先队列、字典等。

  这些结构都支持以某一套方式存储和访问元素(包括删除元素)

posted @ 2018-09-10 17:38  悍妻  阅读(190)  评论(0编辑  收藏  举报