常用数据结构(子博客)

1. 数据结构概述

  数据结构是计算机存储,组织数据的方式。通常由数据元素的集合和集合中数据元素之间的关系组成。

  算法得实现基于数据结构,选择恰当的数据结构可以带来更高的运行或者存储效率。

 

  数据结构通常由三个部分组成:数据的逻辑结构,数据的存储结构和数据的运算基础。

  1)数据的逻辑结构

    数据的逻辑结构反映数据元素之间的逻辑关系。数据的逻辑结构主要包括:

    线性结构(一对一的关系),树状结构(一对多的关系),图结构(多对多的关系),集合。

  2)数据的物理结构

    数据的物理结构反映数据的逻辑结构在计算机存储空间的存放形式,即数据结构在计算机中的表示。

    其具体实现的方法包括:顺序,链接,索引,散列等多种形式。

    一种数据结构,可以由一种或多种物理存储结构实现。

  3)数据的运算结构

    数据的运算结构反映在数据的逻辑结构上定义的操作算法,如检索,插入,删除,更新和排序等。

 

2. 常用的数据结构概述

  计算机包括如下常用的数据结构

  1)数组:按序排列的同类数据元素的集合。

  2)线性表:排列在一条线上或一个环上的数据元素(线性关系)。

  3)栈:遵循先进后出(FILO)原则,只允许在某一端插入和删除的线性表。

  4)队列:遵循先进先出(FIFO)原则,只允许在表的前端进行删除操作,在表的后端进行插入的线性表。

  5)链表:链表由一系列结点(元素)组成,每个结点包括两个部分:数据域和指针域。

  6)树:由 n(n >= 1)个有限结点组成一个具有层次关系的集合,其形状像一棵倒着的树。

  7)图:图是由顶点集合 V(Vertex)和边集合 E(Edge)组成的,定义为 G = (V ,E)。

  8)堆:堆(Heap)是一个树状数据结构,其中子结点与父结点是一种有序关系。

  9)散列表:散列表(Hash Table ,也称哈希表)是把键值映射(映射函数)到表(散列表)的数据结构,通过键值可以实现快速查找。

 

3. python 的 collections 模块(待补充)

 

posted @ 2018-03-04 16:12  皇昭仪  阅读(159)  评论(0编辑  收藏  举报