扫码下载「CSDN程序员学院APP」,1000+技术好课免费看
APP订阅课程,领取优惠,最少立减5元 ↓↓↓
![](https://i-blog.csdnimg.cn/blog_migrate/a95089b5886005bc1baa39a380cf910c.png)
订阅后:请点击此处观看视频课程
视频教程-数据结构实战完全手册-C/C++
学习有效期:永久观看
学习时长:2315分钟
学习计划:39天
难度:低
「口碑讲师带队学习,让你的问题不过夜」
![](https://i-blog.csdnimg.cn/blog_migrate/3a58ca76675d966a64e6ce8a95a13949.jpeg)
讲师姓名:夏曹俊
CEO/董事长/总经理
讲师介绍:夏曹俊:南京捷帝科技有限公司创始人,南京大学计算机硕士毕业,有15年c++跨平台项目研发的经验,领导开发过大量的c++虚拟仿真,计算机视觉,嵌入式图像处理,云安全审计项目,比赛鹰眼系统,主编出版过《C++实训教程》,并同时熟悉php,c#,java,安卓项目研发。
☛点击立即跟老师学习☚
「你将学到什么?」
《数据结构实战完全手册》主讲:丁宋涛
数据结构是程序设计的必修知识,它是程序设计的基本功,并且在企业面试、日常工作、研究生入学考试中都占有重要的地位。不同于其他课程,本课程从单链表出发,手把手的全代码实现了栈与队列,树、图(包括数组和链表的两种形式),并对这些经典结构的应用也做了代码级的实现,覆盖了经典数据结构的全部内容. 课程参考教材:周幸妮教授的《数据结构与算法分析新视角》
由德古意特(DE GRUYTER. 德国)和科学出版社联合出版 对应英文版《Data Structures and Algorithms Analysis – New Perspectives》
「课程学习目录」
第1章:绪论与线性表 |
1.课程介绍 |
2.数据结构本质论-计算思维解析:来自客户信息维护,交通灯问题求解的启发 |
3.数据结构新视角:数据结构就是存数值、存关系 |
4.数据结构与程序性能衡量——大O记法的工程价值 |
5.线性表工程背景与学习要点:Word的场景、手机接入与数据结构抽象 |
6.数组顺序表(一)定义与初始化 |
7.数组顺序表(二)求元素个数、取元素与定位 |
8.数组顺序表(三)插入、删除与功能测试完成 |
9.单链表与顺序表(一)存关系与节点联系跟踪解析 |
10.单链表与顺序表(二)求元素个数、取值与查找 |
11.建立单链表尾插法深入剖析(三)链表结构的内存是由程序员管理的 |
12.建立单链表头插法深入剖析(四)头插法的三种方案 |
13.单链表元素插入(五)前插与后插的实现 |
14.单链表顺序表的删除(六)逻辑结构与物理结构的再认识 |
15.单链表顺序表的功能验证(七) |
16.建立自己的库函数(八)数组顺序表与单链表顺序表的封装 |
17.单链表案例(一)就地转置-原表与逆序表占用空间相同:数组结构与单链表结构的应用实现 |
18.单链表的运算思想:单链表节点关系的维护与单链表操作算法设计 |
19.单链表案例(二)一元多项式相加 |
20.单链表案例(三):学生管理系统(数组)——具有预订空间的解决方案 |
21.链表的变体循环链表(一):单步跟踪下的详细分析 |
22.循环链表(二):建立与合并 |
23.约瑟夫环的实现(三):循环链表调试bug定位技巧 |
24.双向链表的实现与在Linux内核中应用的浅要介绍 |
第2章:栈和队列 |
1.栈的工程背景:函数栈帧调用与call stack的调试技巧 |
2.栈的学习要点:栈的逻辑定义与程序实现对应关系的剖析 |
3.顺序栈的实现:数值转换的应用案例 |
4.链栈的实现:指针初始化的调试技巧分享 |
5.递归与函数栈帧深入剖析:call stack调试技巧 |
6.队列的工程背景与设计技巧:游戏用户进入等待,邮件重发机制与订单缓冲区 |
7.顺序队列设计技巧剖析:“假溢出”与循环队列,front指向队头的上一个元素的设计思想由来 |
8.链队列设计技巧剖析:单步跟踪链队列运行剖析与内存释放 |
9.中缀表达式完全剖析:巧用C/C++重命名复用SeqStack结构 |
10.后缀表达式(逆波兰表达式)实现 |
11.带括号的中缀表达式转后缀表达式 |
12.八皇后问题的非递归实现-回溯法与栈的应用(一) |
13.迷宫路径求解的非递归实现-回溯法与栈的实现(二) |
14.递归设计入门:将递归函数看成答案本身 |
15.八皇后问题的递归实现 |
16.迷宫路径求解的递归实现 |
第3章:树和二叉树 |
1.树的工程背景:网站结构、表达式树及相关概念定义介绍 |
2.双亲孩子检验法是树形结构存储的法则:部门信息存储的实际设计案例 |
3.二叉树的由来与树的孩子兄弟存储发法:树型链式存储中的同构性与异构性设计问题 |
4.数组与链表的结合:孩子链表表示法 |
5.二叉树与树相互转化的算法流程介绍 |
6.满二叉树、完全二叉树与二叉树的三条基本性质 |
7.数组形式的二叉树完全实现:以二叉搜索树建立为例 |
8.智能制造中的树形结构应用案例:数据结构是程序的灵魂 |
9.层次法建立二叉链表树详细剖析:使用辅助队列“存关系”的思路详解 |
10.二叉链表的跟踪技巧、工程经验分享与非线性结构遍历问题的引出 |
11.前序、中序、后序遍历的定义、递归实现与层次法遍历需要队列辅助的原因释疑 |
12.观念中的二叉树构建:通过经典习题构建二叉树思维模型 |
13.非递归前序遍历二叉树:一个深拷贝引出的bug剖析 |
14.非递归中序遍历二叉树 |
15.非递归后序遍历二叉树:一个短路逻辑的实践技巧 |
16.当前非递归遍历方案评述:存在的问题与程序优化的思路 |
17.栈结构与树结构之间传递的程序设计技巧和软件复用的设计思想 |
18.重构到非递归遍历的经典数据结构:非侵入式数据结构设计与可复用软件开发 |
19.获取二叉树的所有叶子节点、获取全树深度与左右子树深度求解:递归遍历中全局变量置0的程序技巧 |
20.根据前序、中序序列重建一棵二叉树的代码实现 |
21.求一棵二叉树根到所有叶子节点的路径 |
22.判断两棵树是否相等与使用二叉链表法建立二叉搜索树 |
23.二叉树镜像:交换左右子树 |
24.平衡二叉树(AVL)的概念:与二叉搜索树的辨析 |
25.平衡二叉树(AVL)单向左旋、单向右旋图示法讲解 |
26.平衡二叉树(AVL)先左后右、先右后左图示法讲解 |
27.平衡二叉树(AVL)完全代码实现 |
28.二叉树的结构展示:层次遍历二叉树完全代码实现 |
29.哈夫曼树与最优不等长编码:Huffman树的由来 |
30.哈夫曼树完全代码实现 |
第4章:图 |
1.拓扑形态等价性-图的工程抽象:地图染色、搜索引擎、最短航线和电路分析 |
2.图的概念及数据结构:邻接矩阵法的示例与代码实现 |
3.邻接表的示例与代码实现 |
4.边集数组法、十字链表法、邻接多重表:图的存储结构评述 |
5.图的染色与日期冲突安排案例完全代码实现:Welsh-Powell法 |
6.邻接数组的深度(DFS)、广度(BFS)优先遍历完全代码实现 |
7.邻接表的深度(DFS)、广度(BFS)优先遍历完全代码实现 |
8.网络冗余链路问题与图的最小生成树 |
9.Kruskal算法与并查集完全代码实现:图的最小生成树算法 |
10.Prim算法完全代码实现:图的最小生成树算法 |
11.图的单源最短路径:Dijkstra算法完全代码实现 |
12.图的多源最短路径:Flod-Warshall算法完全代码实现 |
13.先修排课、编译器分析与AOV网的拓扑排序 |
14.活动顶点拓扑排序AOV网完全代码实现-先修课程案例 |
15.工期排序、AOE网与关键路径法以及堆内存分配调试经验分享 |
第5章:排序与查找 |
1.排序概论与直接插入排序完全代码实现 |
2.插入排序的改进:希尔排序(缩小增量排序法)完全代码实现 |
3.交换排序:冒泡排序完全代码实现 |
4.交换排序:快速排序完全代码实现 |
5.选择排序:直接选择排序完全代码实现 |
6.选择排序:堆排序完全代码实现 |
7.归并排序概念与2-路归并排序完全代码实现 |
8.桶排序概念与基数排序算法完全代码实现 |
9.各类排序的比较与总结 |
10.各类索引结构图示讲解 |
11.查找有序线性表:二分查找法完全代码实现 |
12.查找有序线性表:斐波那契查找法完全代码实现 |
13.字典树(Trie树)词频统计、单词搜索的完全代码实现:非数值有序表查找、一个内存初始化的编程技巧演示 |
14.字符串的搜索与匹配(BF与KMP算法)完全剖析 |
15.散列技术 |
16.经典算法举例:穷举、贪心与动态规划 |
17.综合案例Huffman压缩 |
18.综合案例动态数组. |
「7项超值权益,保障学习质量」
- 大咖讲解
技术专家系统讲解传授编程思路与实战。
- 答疑服务
专属社群随时沟通与讲师答疑,扫清学习障碍,自学编程不再难。
- 课程资料+课件
超实用资料,覆盖核心知识,关键编程技能,方便练习巩固。(部分讲师考虑到版权问题,暂未上传附件,敬请谅解)
- 常用开发实战
企业常见开发实战案例,带你掌握Python在工作中的不同运用场景。
- 大牛技术大会视频
2019Python开发者大会视频免费观看,送你一个近距离感受互联网大佬的机会。
- APP+PC随时随地学习
满足不同场景,开发编程语言系统学习需求,不受空间、地域限制。
「什么样的技术人适合学习?」
- 想进入互联网技术行业,但是面对多门编程语言不知如何选择,0基础的你
- 掌握开发、编程技术单一、冷门,迫切希望能够转型的你
- 想进入大厂,但是编程经验不够丰富,没有竞争力,程序员找工作难。
「悉心打造精品好课,39天学到大牛3年项目经验」
【完善的技术体系】
技术成长循序渐进,帮助用户轻松掌握
掌握C/C++知识,扎实编码能力
【清晰的课程脉络】
浓缩大牛多年经验,全方位构建出系统化的技术知识脉络,同时注重实战操作。
【仿佛在大厂实习般的课程设计】
课程内容全面提升技术能力,系统学习大厂技术方法论,可复用在日后工作中。
「你可以收获什么?」
1.理解数据结构的由来,并能熟练掌握程序设计的基本技能。
2.从代码级别完全实现了经典数据结构的全部内容。3.通过数据结构知识讲解,为后继算法设计、求职笔试、研究生入学考试打下了良好基础。