很多录友在学习STL的时候,会看相关的书,或者看文章。
但大家会发现自己看完之后,并没有动手去实现它,看书更没有动手写代码的动力,而且很多书上给的代码照着抄下来发现是不能运行的!
这给大家想动手自己写STL造成了很多的阻力。
本课程详细制作了14道编程题目,带大家以练代学,边写代码边学STL,学完后,顺便就能实现自己的一套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)
优先队列基础用法 实现简易版本优先队列
上课方式
登录卡码网:kamacoder.com ,购买课程
购买成功后进入课程目录
同时,【我的课程】中也会包含该门课程
进入题目页面,点击【编程小课】标签
左边看图文教程,右边编写代码
查看当前课程目录
付款方式
正常购买,单价:66元
知识星球录友购买,单价:56元。
(知识星球录友是代码随想录的VIP,后续其他产品与服务都会有折扣的)
星球录友在购买时候,可以输入「星球优惠码」,「星球优惠码」在知识星球置顶一里面,输入优惠码之后,可以以56元价格购买课程。
PC端购买
可以电脑登录卡码网:kamacoder.com ,在【商店】这里购买
手机端购买
微信扫码:
购买成功后,使用购买该课程的微信登录 「卡码网」:kamacoder.com,【我的课程】已经自动开通 (建议PC登录)
我适合报名吗?
以下适合报名:
需要掌握一定C++语法基础,至少掌握 C++基础课里的所有知识 没学过STL 了解STL,但从来没有自己实现过
以下不合适报名:
已经读过 STL 源码 自己已经实现了一套STL