zl程序教程

您现在的位置是:首页 >  后端

当前栏目

《零基础入门数据结构与算法》专栏介绍

2023-09-14 09:06:55 时间

前言 

本专栏主要分为五个部分:
① 重要基础知识点详解

② 近百道练习题解析

③ 数据结构与算法测试

④ 数据结构与算法实验

⑤ 数据结构与算法试卷

目录

前言 

第一部分:基础 

第二部分:练习

第三部分:测试

第四部分:实验

第五部分:试卷

总结 


第一部分:基础 

1顺序表的十个基本操作(全)https://want595.blog.csdn.net/article/details/127139051
2单链表的十三个基本操作(全)https://want595.blog.csdn.net/article/details/127139598
3四种创建单链表的方法https://want595.blog.csdn.net/article/details/127017405
4约瑟夫环问题(三种方法)https://want595.blog.csdn.net/article/details/127019472
5两个有序表的合并(三种方法)https://want595.blog.csdn.net/article/details/127104602
6一元多项式相加问题(两种方法)https://want595.blog.csdn.net/article/details/127131351
7删除重复元素(顺序表、单链表)https://want595.blog.csdn.net/article/details/127023468
8顺序栈与链栈https://want595.blog.csdn.net/article/details/127035609
9顺序循环队列与链队列https://want595.blog.csdn.net/article/details/127040115
10后缀表达式的转换(栈的运用)https://want595.blog.csdn.net/article/details/127088466
11简单表达式的计算(两种方法)https://want595.blog.csdn.net/article/details/127121720
12next数组(详细求法)https://want595.blog.csdn.net/article/details/127217629
13BF算法(具体应用)https://want595.blog.csdn.net/article/details/127138894
14串的模式匹配相关问题(BF算法、KMP算法)https://want595.blog.csdn.net/article/details/127182721
15二叉树的遍历(七种方法)https://want595.blog.csdn.net/article/details/127472445

第二部分:练习

Part 1:顺序表

顺序表
1C语言实现顺序表的插入、删除https://want595.blog.csdn.net/article/details/126967798
2顺序表基本练习-初始化、插入和输出https://want595.blog.csdn.net/article/details/127737121
3顺序表基本练习-删除元素https://want595.blog.csdn.net/article/details/127737165
4顺序表基本操作-查找https://want595.blog.csdn.net/article/details/127737191
5顺序表删除重复元素https://want595.blog.csdn.net/article/details/126998125
6顺序表实现集合并集https://want595.blog.csdn.net/article/details/127737454
7顺序表元素循环左移(new)https://want595.blog.csdn.net/article/details/128281975
8删除顺序表中最小值https://want595.blog.csdn.net/article/details/126984319
9递增顺序表插入https://want595.blog.csdn.net/article/details/126990708
10将顺序表非零元素依次移到表的前端https://want595.blog.csdn.net/article/details/127737349
11删除顺序表中第一个值等于x的元素https://want595.blog.csdn.net/article/details/127619864
12在顺序表中,输入一个元素插入到原表的最小元素之前https://want595.blog.csdn.net/article/details/127365247

Part 2:链表 

链表
1单链表基本练习-初始化、插入和输出https://want595.blog.csdn.net/article/details/127736480
2单链表基本操作-查找https://want595.blog.csdn.net/article/details/127736423
3单链表基本练习-删除https://want595.blog.csdn.net/article/details/127736456
4建立带头结点的单链表https://want595.blog.csdn.net/article/details/126970065
5统计不带头结点的单链表长度(循环方法)https://want595.blog.csdn.net/article/details/127008415
6单链表插入https://want595.blog.csdn.net/article/details/126998809
7单链表删除https://want595.blog.csdn.net/article/details/126992677
8在带头结点的单链表的最大值前面插入一个新的结点https://want595.blog.csdn.net/article/details/127621122
9有头结点单链表中查找值等于指定值的结点https://want595.blog.csdn.net/article/details/127056486
10在带头单链表中查找倒数第k个结点(参数传出)https://want595.blog.csdn.net/article/details/126984652
11删除链表中的重复元素https://want595.blog.csdn.net/article/details/127972869
12删除带头结点的单链表中值重复的元素https://want595.blog.csdn.net/article/details/127008877
13删除带头结点的单链表中元素值小于x的所有元素https://want595.blog.csdn.net/article/details/127737764
14在带头结点单链表中查找最大值,将其与最后一个元素交换(交换值)https://want595.blog.csdn.net/article/details/127041933
15链表字符统计https://want595.blog.csdn.net/article/details/126996405
16有头结点单链表逆置https://want595.blog.csdn.net/article/details/126993997
17双向循环链表修复https://want595.blog.csdn.net/article/details/127741782
18双向链表中插入结点并输出https://want595.blog.csdn.net/article/details/127369933
19连接两个循环单链表https://want595.blog.csdn.net/article/details/127620872
20按奇偶位序改造带头结点的单链表https://want595.blog.csdn.net/article/details/127371644
21合并零之间非零节点https://want595.blog.csdn.net/article/details/128084956
22两个整数求和(链表)https://want595.blog.csdn.net/article/details/127852063
23一元多项式相加(单链表)https://want595.blog.csdn.net/article/details/127012074
24编写一个程序实现两个一元多项式相加的运算https://want595.blog.csdn.net/article/details/127369999
25约瑟夫环问题(顺序表实现)https://want595.blog.csdn.net/article/details/126991346
26约瑟夫环问题(循环单链表)https://want595.blog.csdn.net/article/details/126980974

Part 3:栈与队列 

栈与队列
1栈的基本操作https://want595.blog.csdn.net/article/details/127029776
2函数:判断表达式括弧是否匹配https://want595.blog.csdn.net/article/details/127385417
3栈的应用-判断表达式括弧是否匹配(()、[]、{})https://want595.blog.csdn.net/article/details/127034244
4数制转换(十进制转二进制)https://want595.blog.csdn.net/article/details/127030116
5纸条解密-栈的应用https://want595.blog.csdn.net/article/details/127972836
6简单表达式计算https://want595.blog.csdn.net/article/details/127076506
7浏览器中访问网页、回退及前进模拟https://want595.blog.csdn.net/article/details/127760635
8舞伴配对模拟https://want595.blog.csdn.net/article/details/127856027
9判断序列是否为正确的出栈序列https://want595.blog.csdn.net/article/details/128051502
10链队列基本操作https://want595.blog.csdn.net/article/details/127504167
11顺序循环队列的基本操作https://want595.blog.csdn.net/article/details/127504119
12用尾指针标识的单循环链表实现队列rhttps://want595.blog.csdn.net/article/details/127856588

Part 4:串 

1串的表示及基本操作https://want595.blog.csdn.net/article/details/127519718
2字符串中删除子串https://want595.blog.csdn.net/article/details/127066751
3替换字符串中所有子串https://want595.blog.csdn.net/article/details/128282003
4串的模式匹配(BF算法)https://want595.blog.csdn.net/article/details/127519780
5BF算法之输出子串在主串中的位置https://want595.blog.csdn.net/article/details/127138938
6具有通配符?的模式匹配算法(BF)https://want595.blog.csdn.net/article/details/127972990
7串的模式匹配(KMP算法)https://want595.blog.csdn.net/article/details/127181535
8编写程序将一个子串插入到主串中https://want595.blog.csdn.net/article/details/127561944

Part 5:矩阵 

矩阵
1稀疏矩阵的三元组存储及快速转置https://want595.blog.csdn.net/article/details/127622836
2稀疏矩阵的压缩存储https://want595.blog.csdn.net/article/details/127251574
3对称矩阵的压缩存储https://want595.blog.csdn.net/article/details/127237189

Part 6:树 

1二叉树的建立与遍历https://want595.blog.csdn.net/article/details/127460111
2层次遍历二叉树https://want595.blog.csdn.net/article/details/127851432
3计算二叉树的最大宽度https://want595.blog.csdn.net/article/details/127643826
4查找二叉树指定结点,并输出以该结点为根的子树的深度https://want595.blog.csdn.net/article/details/127470043
5计算二叉树的深度和叶子结点数https://want595.blog.csdn.net/article/details/127460472
6交换二叉树中所有结点的左右结点https://want595.blog.csdn.net/article/details/127851496
7非递归方式实现二叉树的四种遍历https://want595.blog.csdn.net/article/details/127817379
8利用非递归遍历统计二叉树的结点数https://want595.blog.csdn.net/article/details/127851363
9函数:先序输出叶结点https://want595.blog.csdn.net/article/details/128282061
10哈夫曼树和哈夫曼编码https://want595.blog.csdn.net/article/details/127811626
11哈夫曼的编码和解码过程https://want595.blog.csdn.net/article/details/127972747

Part 7:图 

1图的邻接矩阵创建https://want595.blog.csdn.net/article/details/128082062
2图的邻接表存储https://want595.blog.csdn.net/article/details/128051336
3图的邻接矩阵与搜索https://want595.blog.csdn.net/article/details/127991797
4图邻接表和拓扑排序https://want595.blog.csdn.net/article/details/128191663
5图的最小生成树-Prim算法https://want595.blog.csdn.net/article/details/128061523
6图的最小生成树-Kruskal算法https://want595.blog.csdn.net/article/details/128191701
7计算有向图点的入度与出度https://want595.blog.csdn.net/article/details/127993469
8单源点最短路径(输出路径)https://want595.blog.csdn.net/article/details/128089453

Part 8:查找 

查找
1查找-顺序查找https://want595.blog.csdn.net/article/details/128298940
2查找-折半查找https://want595.blog.csdn.net/article/details/128154490
3查找-二叉排序树https://want595.blog.csdn.net/article/details/128149201

Part 9:排序 

排序
1简单排序(排序过程)https://want595.blog.csdn.net/article/details/128158773
2快速排序算法https://want595.blog.csdn.net/article/details/128158811
3排序-选择类排序https://want595.blog.csdn.net/article/details/128158564
4排序-交换类排序https://want595.blog.csdn.net/article/details/128329787
5排序-插入类排序https://want595.blog.csdn.net/article/details/128329706
6排序-堆排序https://want595.blog.csdn.net/article/details/128384150

第三部分:测试

测试1绪论https://want595.blog.csdn.net/article/details/127586160
测试2线性表https://want595.blog.csdn.net/article/details/127591268
测试3栈和队列https://want595.blog.csdn.net/article/details/127592062
测试4https://want595.blog.csdn.net/article/details/127594992
测试5数组和广义表https://want595.blog.csdn.net/article/details/127600395
测试6树和二叉树https://want595.blog.csdn.net/article/details/127677927
测试7https://want595.blog.csdn.net/article/details/128103267
测试8查找https://want595.blog.csdn.net/article/details/128347714
测试9排序https://want595.blog.csdn.net/article/details/128354052

第四部分:实验

实验1预备实验https://want595.blog.csdn.net/article/details/127189479
实验2顺序表与链表https://want595.blog.csdn.net/article/details/127200473
实验3栈和队列https://want595.blog.csdn.net/article/details/127215491
实验4https://want595.blog.csdn.net/article/details/127224368
实验5数组和特殊矩阵https://want595.blog.csdn.net/article/details/127243069
实验6https://want595.blog.csdn.net/article/details/127460702
实验7https://want595.blog.csdn.net/article/details/128068272
实验8查找https://want595.blog.csdn.net/article/details/128163041
实验9排序https://want595.blog.csdn.net/article/details/128170363

第五部分:试卷

1试卷1https://want595.blog.csdn.net/article/details/128366307
2试卷2https://want595.blog.csdn.net/article/details/128369350
3试卷3https://want595.blog.csdn.net/article/details/128370494
4试卷4https://want595.blog.csdn.net/article/details/128380517

总结 

莫忘年少凌云志,曾许人间第一流