手写STL,这次稳了!

文摘   科技   2024-10-07 15:00   河北  

很多录友在学习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】(相当于登录卡码网)

点击 「编程基础课」

点击「手写简单版本STL」和「购买」

购买成功后,使用购买该课程的微信登录 「卡码网」:kamacoder.com,【我的课程】已经自动开通  (建议PC登录)

我适合报名吗?

以下适合报名:

  • 需要掌握一定C++语法基础,至少掌握 C++基础课里的所有知识
  • 没学过STL
  • 了解STL,但从来没有自己实现过

以下不合适报名:

  • 已经读过 STL 源码
  • 自己已经实现了一套STL


代码随想录
认准代码随想录,学习算法不迷路。 刷题网站:programmercarl.com
 最新文章