快速上手C++数据结构与算法

快速上手C++数据结构与算法 / 手撕优质代码,突破算法难关

王健伟 《C++新经典》系列作者,资深C++讲师
  • 课程目录
  • 课程介绍
  • 在线阅读:开篇词|学习数据结构与算法,也可以是件小事

    日拱一卒,功不唐捐。这是我非常喜欢的一句话,这里也送给即将踏上旅程的你。

  • 01|算法时间复杂度:千里之行,始于足下

    算法时间复杂度主要用于评估一个算法写成的程序在执行时耗费时间的数量级,让我们对算法的执行时间做到心中有数,甚至更进一步,能够帮助我们优化算法的编写。

  • 02|算法空间复杂度:算法运行所需要的额外空间是多大?

    随着后面课节对各种算法的深入讲解,相信你也会对算法的时间复杂度和空间复杂度有更深刻的理解。

  • 03|编程环境:工欲善其事,必先利其器

    俗话说,“工欲善其事,必先利其器”,今天我们就来说说编程环境的搭建。

  • 04|顺序表(上):如何实现快速地随机访问?

    在聊顺序表之前,首先我们要引入“线性结构”和“线性表”的概念。

  • 05|顺序表(下):常用操作合集与复杂度分析

    这节课,我们继续探讨顺序表的不同操作,和上节课一样,先从抽象模型开始理解,再去理解操作的实现的代码。通过时间复杂度的分析,为我们提供优化操作的思路。

  • 06|单链表:如何通过指针提升插入、删除数据的速度?

    线性表的链式存储也非常基础和常用,它不需要使用连续的内存空间。

  • 07|双链表:搜索链表中节点的速度还可以更快吗?

    这一系列的讲解,都是为了让我们更了解双链表的工作原理。除非有特殊需要,一般不需要自己实现单链表和双链表,因为标准模板库中已经提供了。

  • 08|循环链表:如何更方便地寻找数据?

    为什么一定要在单链表或者双链表基础上引入循环链表呢?

  • 09|静态链表:用一维数组表达的链表

    有些早期的高级语言,并没有指针这种概念,之前我们探讨的链表实现方法在这些高级语言中并不适用。于是,静态链表应运而生。

限时福利


你将获得

  • 40+ 经典数据结构与算法一网打尽
  • “保姆级”代码实现与图示详解
  • 聚焦 60+ 算法高频面试题目
  • 从 0 到 1 算法优化逻辑精讲

讲师介绍

“C++ 新经典”系列书籍《C++ 新经典》《C++ 新经典:对象模型》《C++ 新经典:Linux C++ 通信架构》《C++ 新经典:模板与泛型编程》《C++ 新经典:设计模式》作者。拥有多年授课经验,讲课风格深入浅出。

也曾参与创办深圳知名网络安全公司安络科技有限公司,是公司的网络安全在线扫描评估系统项目负责人,全球同服独立游戏《冒险之路》制作人。


课程介绍

提到数据结构与算法,“吃透”和“内功”这两个词像两座大山一样压在身上,让人喘不过气,以至于出现了很多所谓的坚持和抱怨。但是,作为一门计算机专业的基础课程,它也的确是我们学习之路上绕不开的伙伴。

要想进入大厂,它是许多求职者的敲门砖;想要深入了解热门技术,比如微服务、大数据、云计算等等,它也是必备的基础知识。

然而我们发现,涉及数据结构和算法知识方面的资料多数比较晦涩,不是数学知识过多,就是学术性太强。有些资料知识覆盖面太过宽泛甚至表达不清,导致学习者一头雾水,所提供的实现代码也往往是伪码或代码片段,很难让人有舒适的学习体验。

为此,我们邀请到了《C++ 新经典》系列作者,资深 C++ 讲师王健伟,帮你抛下身上对于数据结构与算法的沉重包袱,回归最基础的概念与代码,夯实基础、打开思路,潜移默化地培养数据结构与算法的敏感度,更为之后的每一次实战打下坚实的基础。

课程模块设计

本专栏分为3个由浅入深的大模块。

预习模块
到底什么是数据结构与算法?为什么编程环境还会是我们的绊脚石?这一模块将为你打开数据结构与算法的大门,扫清所有非知识性的障碍,同时,也将回到具体的代码实现上,为你建立算法的时间复杂度和空间复杂度的意识,为后面的学习打好基础。

基础模块
这个模块包括线性表、树、图、排序、字符串、跳表与哈希表等等面试或应用当中遇到的大部分数据结构与算法。课程会先详细呈现一个数据结构或一个算法的概念和思路,充分理解后,再将思路通过代码的方式实现出来,整个过程会更顺理成章。同时,也避免了在学习的初级阶段就接触过多抽象思维,删繁就简,易懂性强。

进阶篇
这个模块包含一些难度相对较大,在面试中出现频率没那么高的内容,比如 B+ 树、折半插入排序、计数排序、基数排序及桶排序等等。少花一点精力,少敲一些代码,把课程中讲解的内容理解就完全没问题了。


课程目录


适合人群

难度定位:初等难度。

适合人群:初学者,以及基础较为薄弱的C++工程师。

  • 对于初学者,是必看的极简学习攻略。
  • 对于从事 C++ 开发 3-5 年的同学,是进一步提升之前需要回归的基础内容,需要落实在代码层面,进一步精、准、熟练掌握。

订阅须知

随机推荐

炖锅辅食双狐电炖熬粥隔水便携煮粥值得买吗?买前必看!

吸汗芬腾可安235A三角裤条装纯棉质量靠谱吗?大家真实看法解读

虾皇水饺400g评测怎么样?用户吐槽曝光

钒象智科大号颗粒象智科+181儿童玩具木桌生日礼物拼装点评怎么样...

舒奈美医用人源化膜械医美冷敷敷料胶原蛋白果酸深度剖析测评质量...

旁氏米粹120g洁面乳去角质润泽保湿氨基酸清洁反馈怎么样?功能评...