基础数据结构

  1. 数组
  2. 集合
  3. 链表
    1. 栈的实现
  • 队列
    1. 典型问题
  • 数据结构,数据存储的方法,包括数据对象,和操作集,不包括具体实现。具体实现是算法

    数组

    检索简单,增删难

    集合

    Set,不重复的数组

    链表

    增删简单,检索难。插入删除内存和时间消耗小,查询消耗大,适合插入多,查询少的情景

    广义表:是线性表的推广,元素可以是另一个广义表

    多重链表:节点可能属于多个链表,双向链表不是多重链表。树和图就是用多重链表实现

    稀疏矩阵用多重链表存储。

    先进后出

    表达式求值,递归,函数调用,深度优先搜索,回溯算法

    具有一定操作约束的线性表

    栈的实现

    一维数组和一个记录栈顶元素位置的变量

    链表实现,从头部插入

    队列

    也是一种受限制的线性表,先进先出

    普通线性表在所有位置都可以增删,堆栈只在顶部增删,队列只在头尾增删

    用链表实现的时候,因为链表的尾部不能执行删除操作,所以队列的头部只能是链表的头部

    典型问题
    1. 优先队列
    2. 循环队列

    文章标题:基础数据结构

    本文作者:Benny

    发布时间:2020-06-08, 19:49:33

    最后更新:2018-06-14, 10:56:38

    原始链接:https://benny233.github.io/2020/06/08/基础数据结构/

    版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

    目录