CSE/CS101:C++ 编程抽象思维,Spring 2023
最新通知
课程介绍
《CSE/CS101:C++ 编程抽象思维》使用 C++ 编程语言介绍高级编程技术。本课程从零开始编写讲义并精心组织相关知识点的引入,从最基础的编程概念逐步深入,重点讲解了递归思维、算法分析、数据抽象,以及一些经典的数据结构和算法实现。本课程参考了斯坦福大学 CS106 系列课程的教学目标和大纲,并实践所谓的“斯坦福授课风格”,深入浅出带您领略程序设计和编程语言相关的技术。
编程不是记忆一些语法规则,完成一些简单的过程代码,而是如何利用计算机解决难题。本课程是关于从“如何编写程序”过渡到“如何解决计算机问题”,从“如何写对程序”过渡到“如何写好程序”。完成本课程后,我们希望您能实现以下学习目标:
- 使用编程来解决现实世界中的复杂问题
- 认识并理解计算机科学中通用的抽象思维
- 利用算法推理和递归技能,可以将复杂的问题分解为较小的子问题
- 在使用或设计数据结构和算法时,能够评估设计上的权衡
除此之外,通过本课程的训练,您将获得足够强大的调试能力,并体会到测试驱动开发(TDD)的优势。
面向对象
本课程主要面向传统工科朋友,苦于编程学习迟迟不得要领的朋友。
课程安排
课程主要涉及以下几个主题:
- C++/CMake 基础知识
- 抽象数据结构
- 递归思维
- 类和内存管理
- 经典抽象数据类型
- 经典高级算法
建议学习时间的投入不低于 150 个小时。
授课方式
暂定使用 QQ 群课堂功能,支持回放。
进阶课程
- CSE/CS102:计算机组成与系统,完美复现斯坦福 CS107