不要因为现实的平凡,就否定了那华丽的梦想!
|
Programming Abstractions in C++
《CS106B:程序抽象》是斯坦福大学计算机科学系开设的一门基础课程,旨在培养学生掌握程序设计和抽象的核心概念。课程内容主要围绕如何设计清晰、可维护的代码结构,注重数据结构、算法以及如何在解决复杂问题时抽象出关键的设计模式。学生通过学习抽象、模块化和数据抽象的技巧,掌握如何将复杂问题分解为易于处理的部分,同时提升问题解决能力。课程涵盖的内容包括基本的数据结构(如链表、栈、队列、树等)、递归、动态规划和图算法等。通过编程实践,学生不仅学会使用已有工具和库,还能培养出高效且优雅的编码习惯,理解软件工程中对程序设计的高层次要求。
⭐⭐⭐
语音 | 字幕 | |
---|---|---|
中文 | ✅ | ✅ |
英文 | ✅ | ✅ |
无
1.Welcome - 欢迎
2.Programming Fundamentals in C++ - C++编程基础
3.Strings and Testing - 字符串与测试
4.Console Programs and Vectors - 控制台程序与向量
5.Ordered Data Structures: Grids, Queues, and Stacks - 有序数据结构:网格、队列和堆栈
6.Unordered Data Structures: Sets and Maps - 无序数据结构:集合与映射
7.Using Abstractions: Implementing Breadth-First Search - 使用抽象:实现广度优先搜索
8.Big-O Notation and Algorithmic Analysis - 大O符号与算法分析
9.Introduction to Recursion - 递归入门
10.Recursive Fractals - 递归分形
11.Why We Use Recursion - 为什么使用递归
12.Recursive Backtracking and Enumeration - 递归回溯与枚举
13.Recursive Backtracking Revisited - 递归回溯再探
14.Recursive Optimization and Review - 递归优化与回顾
15.Object-Oriented Programming - 面向对象编程
16.Dynamic Memory and Arrays - 动态内存与数组
17.Implementing an ADT - 抽象数据类型的实现
18.Priority Queues and Heaps - 优先队列与堆
19.Memory and Pointers - 内存与指针
20.Introduction to Linked Lists - 链表入门
21.Linked List Operations - 链表操作
22.Linked List Wrapup and Intro to Sorting - 链表总结与排序入门
23.Advanced Sorting (Divide-and-Conquer) - 高级排序(分治法)
24.Trees - 树
25.Binary Search Trees - 二叉搜索树
26.Huffman Coding - 哈夫曼编码
27.Hashing - 哈希
28.Graphs and Graph Algorithms - 图与图算法
29.Multithreading and Parallel Computing - 多线程与并行计算
30.Life after CS106B - CS106B后的学习路径