写在最前面:开始算法的学习,基本的学习顺序如下:

数据结构部分:花费3天时间,将基本的数据结构了解一下,包括C++和python的实现代码。
算法部分:根据AcWing的视频进行学习,整理好模板
题目部分:在学习后进行刷题,整理题型和优解

下面介绍一下学习的整体框架,为后面具体的学习和实践打好基础。

数据结构的基本概念

基本概念和术语

数据结构三要素

算法和算法评价

:算法是求解问题的一种步骤描述,但是一个问题往往有很多解法,对此要学会对算法进行优化。在实际的算法比赛里也是根据通过的数据量判断成绩,所以算法的效率很关键。

线性表

线性表的定义

基本操作


:对于算法的代码实现时,函数的命名要有具体含义,便于理解。

线性表的顺序表示

顺序表的定义

顺序表的基本操作

线性表的链式表示

单链表


双链表

循环链表

静态链表

顺序表与链表比较

栈的基本概念

栈的顺序存储结构

栈的链式存储结构

队列

队列的基本概念

队列的顺序存储结构

队列的链式存储结构

双端队列

树的基本概念

树的定义

基本术语

树的性质

二叉树

定义与主要特性

二叉树的存储结构

图的定义

图的存储与基本结构

图的遍历

图的应用

散列表

散列表的基本概念

散列函数的构造


写在最后:上面只是对数据结构进行一些基本的介绍和整理,在整体上有一个印象。还需要深入的学习和实践才可以真正掌握。同时数据结构是算法的基础,要在掌握基本数据结构的基础上进行算法的学习和实践。