带你看数据结构都学什么

  1. 顺序表
    与数组相似,分配地址连续分为定长形和变长形,结构体中定义基地址,元素个数(标记)可分配元素个数
  2. 链式表
    结构体定义指针类型要注意,地址一定要分配新空间
    分配空间不连续,用一个结点分配一次空间。结构体分为数据域和指针域。给结点分配空间。初始化时建立链表类型否指针不能传递,赋值时分为头插法和尾插法(建立一个新指针做标记)
  3. 合并链表
    将链表lb合并到la,建立新链表lc,lc=la。
  4. 循环链表
    尾指针不为空的链表
  5. 双向链表
    有前驱和后继指针的链表,结构体建立数据域前驱和后继节点。
  6. 多项链表合并
    典型应用于多项式计算。数据域建立系数和指数
  7. 顺序栈
    后进先出,类似顺序表。结构体中有基地址,top指针,可容纳元素个数。
  8. 栈的应用
    转换进制问题 火车进出问题(近后马上出和近后出)括号匹配问题
  9. 循环队列
    先进先出 类似顺序表。尾近头出,结构体中建立基地址,头和尾(都相当于元素下标)l->front=l->real=0;//判空,(l->real+1)%maxsize==l->front判满,l->real=(l->real+1)%maxsize;尾后移
  10. 链式队列
    定义两个指针,一个总指向头,另一个总指向尾。从尾插插入头输出。主要是初始化时尾针指向头指针
  11. 串的堆分配
    类似线性表,只是针对与字符,建立基地址和现有元素个数。‘\0’
  12. 数组
    抽象的线性表,表中每一个元素是一个数组。主要题型求元素所在位置(第一个元素下标是从一开始还是从零开始)。
  13. 矩阵压缩
    对称矩阵,上(下)三角矩阵,稀疏矩阵
  14. 矩阵压缩
    建立三元组数组,矩阵的行列和非零元个数,将非零元行列数存放在三元组中,将三元组行列调换形成矩阵转置新三元组,按新三元组输出转置矩阵将数组先初始化,多变量控制。三元组包括元素行列和元素值。
    12,13,14主要求数组中位置和表中位置的转换,看第一个元素值从零开始还是从一开始,按行转换还是按列转换

  15. 树的定义和基本术语,二叉树五条性质三遍历,二叉树建立顺序存储和链式存储和遍历中续先续后续代码,给出两个遍历结果求二叉树图,线索二叉树及其遍历。森林的存储方式双亲表示(顺序存储)孩子表示,兄弟孩子表示(二叉树),森林与二叉树的转换,森林的遍历,最优二叉树(哈夫曼树)哈夫曼编码

  16. 图的定义和基本术语,图的数组表示和邻接表。图的深度相当于二叉树先续广度遍历相当于二叉树层序遍历,普里姆和克鲁斯卡尔最小生成树。判断有向图有环无环的拓扑排序,关键路径,最短路径
  17. 查找
    查找分静态查找和动态查找(有插入删除),静态查找分为顺序查找(顺序表,建立哨兵),有序表查找(折半法),索引表(分块查找,快和快之间有大小关系,块内部没有)。动态查找分为二叉排序树(左子树小于根节点右子树大于根节点,中序遍历后得到排序数,二叉排序树的删除),二叉平衡树(构造)。哈希表(除留取余法(开放定址法(线性探测再散列和平方探测再散列和随机探测再散列)))
  18. 排序
    插入排序(直接插入排序(边插边排),希尔排序(先宏观调整,在微观调整,定义d)),交换排序(起泡排序和快速排序(定义一个枢轴,比他小放左边,比他大放右边,多次排序))选择类排序(简单选择排序和堆排序(大顶堆小顶堆))。归并排序(讲两个或两个以上序列归并成一个序列)基数排序(多关键字排序)不稳定堆排序
发布了41 篇原创文章 · 获赞 1 · 访问量 1255

猜你喜欢

转载自blog.csdn.net/xiaoqiang616717/article/details/100637367