• 常用数据结构


    复习下数据结构基础

    线性表:由零个或多个数据元素组成的有限序列。

    数组:在我们程序设计中,为了处理方便,会把一些具有相同类型的元素有序的放在一起,这些有序排列的数据元素的集合成为数组。

    栈:栈是只能在一端插入或删除的特殊线性表,先入栈的数据在栈底,后入栈的数据在栈顶,需要读取数据时,最先获取到的是栈顶的数据。也就是先进后出,后进先出。

    队列:一种特殊的线性表,它允许在表的前端进行删除,后端进行插入操作,队列是先进先出,后进后出原则。

    链表:链表是一种物理存储单元上非连续的,非顺序的存储结构,它既可表示线性的,也可以表示非线性的,在这里(逻辑结构中)链表是通过其中的指针来链接次序的,它是由一系列结点(链表中的每一个元素成为结点)组成的,结点可以在运行时生成,当中包含两个重要数据,一个是存储结点内容的数据域,另一个是存储下一个结点地址的指针域。

    树:包含n(n>0)个结点的有穷集合k,且在k中定义了一个关系N,N满足以下条件:

    1.有且只有一个k0结点,k0结点称为树的根(root)结点;

    2.除k0外,k中的每个结点有且只有一个前驱结点;

    3.k中各结点,对关系N来说,可以有m个后续(m>=0)。

    图:图是由有穷集合V和边集合E组成的,为和树做区别,图中的结点称为顶点,边是顶点的有序偶对,若两个顶点中间存在一条边则表示这两个顶点为相邻关系。

    堆:堆是一种特殊的树形数据结构,每个结点都有一个值,通常我们所说的堆的数据结构,是指二叉堆。堆的特点是根节点的值最小(或最大),且根节点的两个子树也是一个堆。

    散列表:若结构中存在关键字和K相等的记录,则必定在f(K)的存储位置上,由此,不需比较便可直接取得所查记录。称这个对应关系f为散列函数(Hash function),按这个思想建立的表称为散列表。

    参考链接:

    https://blog.csdn.net/sinat_34344123/article/details/80479364#array

  • 相关阅读:
    线性表ADT实现
    基数排序
    二叉树之已知前序和中序遍历求后序遍历(POJ2255 &&HDU )
    acm头文件
    快排
    快读
    二分
    数据结构大师
    AC_2. 01背包问题
    AC_94. 递归实现排列型枚举
  • 原文地址:https://www.cnblogs.com/zkfopen/p/10594247.html
Copyright © 2020-2023  润新知