数据结构目录树(严蔚敏&王道)版

  • Post author:
  • Post category:其他



概述

为了使计算机组成原理的相关知识,连贯起来,更方便查找理解,制作数据结构的目录。





目录


基本知识归纳

基本知识归纳与导航——–

10分钟了解数据结构讲的什么


基础概念

ADT——-

ADT抽象数据类型

(抽象数据类型的理解,由来)

时间复杂度——–

时间复杂度的计算

(每个算法的衡量标准)


基本数据结构

链表——

链表

(链表的插入,删除,修改等)



图的基本概念——–

图的基本概念

(了解图之前,需要了解图的基本概念)

KMP算法——–

KMP算法

(了解如何计算next,nextval,已经KMP算法的过程)

AOE网——–

关键路径的计算

(关键路径,最早发生时间,最晚发生时间怎么计算的)


最小生成树的几种求法

图的遍历——–

深度优先遍历,广度优先遍历

(深度优先遍历,广度优先遍历的过程是怎么样的)

Kruskal算法——–

Kruskal

(Kruskal算法,是全局性每次选择权值最小的边)

Prim算法——–

Prim

(Prim每次选择,当前已经插入结点能连接到的,权值最小的边)

求最小生成树的几种算法,代码的总结——–

深度,广度,Prim,Kruskal算法(C语言实现)


最短路径的几种求法

迪杰斯特拉算法——–

Dijkstra

(朴素的算法,每次全局性选择最短的边)

弗洛伊德算法——–

Floyd

(区别于迪杰斯特拉算法,不断对表更新,而不是数组)



线索二叉树——-

线索二叉树

(线索二叉树是什么,先序,中序,后序,)

B树B+树——–

B树和B+树的性质

(B树是什么,B+树又是什么)

哈夫曼树与哈夫曼编码——–

哈夫曼树与哈夫曼编码

(被称为最优二叉树的哈夫曼树)

红黑树——–

红黑树

(类似于二叉搜索树,理解其过程和特点,理解过程和特点)

AVL数——–

平衡二叉树


算法


排序算法

快速排序——-

快速排序

(作为金典必备的排序算法,必须要会写代码)

堆排序——–

堆排序

(大顶堆,小顶堆,打擂台)

基数排序——–

基数排序

(个位,十位,百位。。。依次排序)

归并排序——–

归并排序

(2路归并,3路归并,依次选出强者,也像是打擂台)


总结:

至此数据结构的基本知识,归纳概括已经完成,像栈,链表等基本概念,在

10分钟了解数据结构讲的什么

中也有提及,但此类问题,更多的是需要去理解,做题。

欢迎大家对博客提出改进的建议,和纠错。


附录


附1

——–

摩尔质量的计算

(看起来简单的经典算法题,只是看起来)


附2

——–排序算法总结(理解了,还是得背。)

冒泡排序:比较两个相临元素大小,每次将数据元素中最大元素交换到最后。

直接选择排序:每一趟选出最大或最小的元素,放到最前或最后,下一次再从n-1个数当中选。

插入排序:每次将一个元素,按关键字的大小,插入到前面已经排序的序列当中。

希尔排序:缩小增量排序,分组地直接插入排序。主要取决于增量。

归并排序:以n路归并,每次在n个当中选出最大或者最小的排序。再将子有序的队列,合并。

快速排序:选一个数为基准数,将小的放在前面,大的放在后面,确定基准数的最终位置,并且在基准数的左右两端再次确定基准数,直到子序的长度为1。

堆排序:大顶堆,小顶堆,找出最大的值或最小的值。

二分法排序:这类排序算法的时间复杂度,通常都是为logn。



版权声明:本文为Y920036515原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。