# 手写STL(C++)
很多录友在学习STL的时候,会看相关的书,或者看文章。
但大家会发现自己看完之后,并没有动手去实现它,看书更没有动手写代码的动力,而且很多书上给的代码照着抄下来发现是不能运行的!
这给大家想动手自己写STL造成了很多的阻力。
本课程详细制作了14道编程题目,带大家以练代学,边写代码边学STL,学完后,顺便就能实现自己的一套STL库。
该编程实战课是将 STL 拆解制作成 14道编程题目 配合文字讲解,没有提供视频讲解。
# 教程特点:
- 以实践为导向:通过手写代码来深入理解STL的工作原理。
- 从零开始:无需事先了解 C++ STL,只需有 C++ 语法基础即可。
- 配套练习:每个章节都有配套的编程题目,可以在线提交,帮助巩固学习。
# 教程大纲:
第一节:动态数组(vector)
- 双向链表基础用法
- 双向链表自动扩容机制
第二节:双向链表(list)
- 双向链表基础用法
- 实现简易版本双向链表
第三节:双端队列(deque)
- 双端队列基础用法
- 实现简易版本双端队列
第四节:哈希表(hashtable)
- 哈希表原理分析
- 实现简单版本的哈希表
第五节:红黑树(redblacktree)
- 红黑树原理分析
- 实现简单版本的红黑树
第六节:有序集合(set)
- 有序集合基础用法
- 有序集合实现原理分析
- 以红黑树为底层数据结构,封装简易版本的有序集合
第七节:无序集合(unordered_set)
- 无序集合基础用法
- 无序集合实现原理分析
- 以哈希表为底层数据结构,封装简易版本的无序集合
第八节:有序多重集合(multiset)
- 多重集合基础用法
- 多重集合实现原理分析
- 以红黑树为底层数据结构,封装简易版本的多重集合
第九节:有序映射(map)
- 映射基础用法
- 映射实现原理分析
- 以红黑树为底层数据结构,封装简易版本的映射
第十节:无序映射(unordered_map)
- 无序映射基础用法
- 无序映射实现原理分析
- 以哈希表为底层数据结构,封装简易版本的无序映射
第十一节:有序多重映射(multimap)
- 多重映射基础用法
- 多重映射实现原理分析
- 以红黑树为底层数据结构,封装简易版本的多重映射
第十二节:栈(stack)
- 栈基础用法
- 实现简易版本栈
第十三节:队列(queue)
- 队列基础用法
- 实现简易版本队列
第十四节:优先队列(priority_queue)
- 优先队列基础用法
- 实现简易版本优先队列
# 上课方式
付款后,PC 登陆卡码网 kamacoder.com
点击【我的课程】 (只有支付后的录友看能看到 【我的课程】)
购买成功后进入课程目录
进入题目页面,点击【编程小课】标签
左边看图文教程,右边编写代码
查看当前课程目录
# 付款方式
扫码后,会看到,单独购买(66元)和拼单购买(60元)两种方式, 可以找身边的伙伴拼单,也可以自己和自己拼单。

支付后,该课程在卡码网就会自动开动,登录卡码网(kamacoder.com) ,查看【我的课程】
# 我适合报名吗?
以下适合报名:
- 需要掌握一定C++语法基础,至少掌握 C++基础课里的所有知识
- 没学过STL
- 了解STL,但从来没有自己实现过
以下不合适报名:
- 已经读过 STL 源码
- 自己已经实现了一套STL
@2021-2024 代码随想录 版权所有 粤ICP备19156078号