1. Thinking in Code(编程思维)
这门课是编程入门,核心是培养“用代码解决问题”的逻辑直觉。
- 计算思维基础- 算法的定义:步骤、顺序、输入/输出
- 抽象思维:把复杂问题拆解成简单步骤
- 模式识别:从重复任务中提炼通用规则
- 基本控制流- 顺序执行:一步接一步的指令序列
- 条件判断: if/else 逻辑、分支选择
- 循环结构:重复执行、计数循环的直观理解
- 问题解决模型- 用伪代码描述算法
- 调试思维:识别并修正错误步骤
- 简单逻辑谜题的算法解法(如过河问题、排序问题)
2. Programming with Variables(变量编程)
聚焦编程的核心概念——变量与数据。
- 变量基础- 变量的定义:存储数据的“盒子”
- 变量赋值:读取、修改、更新值
- 数据类型:数字、文本、布尔值(真/假)
- 变量运算与操作- 算术运算:加减乘除、取模
- 字符串操作:拼接、截取、转换
- 比较运算:等于、大于、小于、不等于
- 变量在程序中的应用- 用变量存储中间结果
- 计数器、累加器的实现
- 条件判断中使用变量值作为判断条件
3. Programming with Functions(函数编程)
学习如何把代码封装成可复用的模块。
- 函数基础- 函数的定义:输入、处理、输出
- 函数调用:执行、参数传递
- 函数的作用:避免重复代码、模块化
- 函数参数与返回值- 位置参数、默认参数
- 函数的返回值:单个值、多个值
- 函数作为“黑盒”:只关心输入输出,不关心内部实现
- 函数的进阶应用- 函数嵌套调用
- 递归入门:函数调用自身的直观理解
- 用函数解决复杂问题(如计算阶乘、判断质数)
4. Algorithmic Thinking(算法思维)
从“写代码”升级为“设计高效算法”。
- 算法复杂度基础- 时间复杂度:执行步骤数与输入规模的关系
- 空间复杂度:内存使用量
- 直观理解“高效 vs 低效”算法
- 常见算法模式- 穷举法:遍历所有可能的解法
- 贪心算法:每一步做局部最优选择
- 分治思想:把问题拆成子问题再合并
- 经典算法问题- 排序与查找:冒泡排序、二分查找的直观理解
- 路径问题:迷宫、最短路径的算法思路
- 优化问题:如何减少不必要的计算步骤
5. Computer Science Fundamentals(计算机科学基础)
这门课是对计算机科学的全景入门,覆盖底层原理与核心概念。
- 计算机硬件基础- 二进制与数据表示:0和1如何表示数字、文本
- 存储与内存:数据的存储方式、地址概念
- 处理器与指令:CPU如何执行代码
- 数据结构入门- 数组:有序存储、随机访问
- 列表与栈:先进后出的结构
- 队列:先进先出的结构
- 计算理论基础- 什么是可计算问题
- 图灵机的直观理解
- 算法与程序的区别
- 应用与影响- 计算机网络基础:数据如何在设备间传输
- 人工智能与算法的关系
- 计算机科学在各领域的应用
6. How AI Works(AI 原理入门)
- AI 核心概念
- 人工智能的定义:模拟人类智能的系统
- 机器学习与传统编程的区别:数据驱动 vs 规则驱动
- 监督学习、无监督学习、强化学习的直观理解
- 机器学习基础流程
- 数据收集与预处理:数据清洗、特征选择
- 模型训练:从数据中学习规律
- 模型评估:准确率、误差的直观理解
- 常见 AI 应用的原理
- 图像识别:如何识别图片中的物体
- 自然语言处理:机器如何理解文本
- 推荐系统:如何根据用户偏好推荐内容
- AI 的局限性与伦理
- 偏见与公平性问题
- 可解释性:AI 决策的黑箱问题
- 未来发展趋势
7. Introduction to Neural Networks(神经网络入门)
- 神经元与感知机
- 生物神经元的启发:输入、激活、输出
- 感知机模型:加权求和、激活函数
- 单层感知机的能力与局限
- 神经网络结构
- 输入层、隐藏层、输出层的作用
- 权重与偏置:模型的可学习参数
- 常见激活函数:Sigmoid、ReLU 的直观理解
- 训练神经网络
- 损失函数:衡量模型预测误差
- 梯度下降:如何调整权重以减小误差
- 反向传播算法:误差如何从输出层传递回输入层
- 神经网络的应用与发展
- 图像分类、语音识别等场景的应用
- 深度学习的基本概念
- 神经网络的训练技巧与挑战
PYTHON
1. Thinking in Python(Python 思维)
这门课是 Python 入门,核心是建立“用 Python 解决问题”的思维方式。
- Python 基础语法与环境- Python 程序的执行流程:顺序执行、解释器运行
- 基本输入输出: print() 输出、变量赋值
- 注释的使用:单行/多行注释、代码可读性
- 数据类型与变量- 基础数据类型:整数 int 、浮点数 float 、字符串 str 、布尔值 bool
- 变量命名规则:合法标识符、关键字
- 变量赋值与更新: = 赋值、增量赋值( += 等)
- 基本运算与表达式- 算术运算:加减乘除、取模 % 、幂运算 **
- 比较运算: == 、 != 、 > 、 < 等,返回布尔值
- 逻辑运算: and 、 or 、 not ,布尔表达式
- 控制流基础- 条件判断: if / elif / else 语句、分支逻辑
- 循环入门: for 循环、 while 循环的直观理解
- 循环控制: break 、 continue 的作用
2. Functions in Python(Python 函数)
聚焦 Python 中函数的定义与使用,掌握代码复用的核心工具。
- 函数基础- 函数定义: def 关键字、函数名、参数列表
- 函数调用:执行函数、传递参数
- 函数的作用:封装代码、避免重复、模块化
- 参数与返回值- 位置参数:按顺序传递的参数
- 默认参数:带默认值的参数
- 关键字参数:按参数名传递
- return 语句:函数返回值、无返回值( None )
- 函数进阶特性- 作用域:局部变量、全局变量的区别
- 函数作为“第一类对象”:函数赋值给变量、作为参数传递
- 匿名函数 lambda :简单函数的简写形式
- 函数的应用场景- 封装重复逻辑:如计算、数据处理
- 简化复杂问题:将大问题拆分为多个函数
- 提高代码可读性:函数名作为“自解释文档”
3. Recursion in Python(Python 递归)
学习递归思想,掌握用函数调用自身解决问题的方法。
- 递归基础概念- 递归的定义:函数调用自身
- 递归三要素:基线条件(终止条件)、递归条件、向基线条件收敛
- 递归的执行过程:调用栈、栈溢出风险
- 简单递归案例- 阶乘计算: n! = n × (n-1)!
- 斐波那契数列: F(n) = F(n-1) + F(n-2)
- 字符串反转、列表求和等基础问题
- 递归与迭代的对比- 递归 vs 循环:适用场景、优缺点
- 尾递归优化的概念(Python 中不原生支持,但理解其思想)
- 复杂递归问题- 分治思想:用递归实现分治算法(如归并排序)
- 回溯法:用递归解决组合、排列问题(如迷宫、八皇后)
- 树结构的递归遍历:前序/中序/后序遍历入门
4. Algorithms in Python(Python 算法)
结合 Python 语言,学习常见算法与数据结构的实现。
- 基础数据结构与操作- 列表 list :增删改查、切片、列表推导式
- 元组 tuple :不可变序列、解包
- 字典 dict :键值对、哈希表原理、增删改查
- 集合 set :去重、交集/并集/差集运算
- 常见算法实现- 排序算法:冒泡排序、选择排序、插入排序的 Python 实现
- 查找算法:线性查找、二分查找(列表有序时)
- 字符串处理:反转、回文判断、子串匹配
- 算法复杂度分析- 时间复杂度:用 Python 代码直观理解 O(n)、O(n²)、O(log n)
- 空间复杂度:列表、字典等结构的内存占用
- 优化思路:减少循环次数、避免重复计算
- 实际应用问题- 数据处理:用列表/字典处理简单数据集
- 模拟问题:如模拟排队、模拟掷骰子
- 优化问题:如找列表最大值/最小值、计算众数
数据分析
1. Exploring Data Visually(数据可视化探索)
这门课教你如何用图表“读懂”数据,建立数据直觉。
- 数据类型与基础图表- 定量数据 vs 定性数据:不同数据类型的可视化方法
- 柱状图/条形图:比较类别间的数值差异
- 折线图:展示数据随时间的变化趋势
- 散点图:探索两个变量间的相关性
- 分布可视化- 直方图:展示数据的频率分布、中心趋势、离散程度
- 箱线图:识别中位数、四分位数、异常值
- 密度图:直观理解数据分布形态(正态、偏态等)
- 数据可视化的原则- 图表选择:根据数据类型和分析目的选图
- 误导性图表识别:坐标轴截断、比例失真等常见陷阱
- 图表解读:从图表中提取关键信息、发现模式
2. Probability in Data(数据中的概率)
学习如何用概率思维理解数据背后的随机性。
- 概率基础与数据- 概率与频率:用数据频率估计事件概率
- 条件概率:数据子集下的概率计算
- 独立事件与相关事件:从数据中判断变量独立性
- 随机变量与分布- 离散/连续随机变量:数据的取值与概率分布
- 常见分布:二项分布、正态分布的直观理解
- 期望与方差:用数据估计分布的中心与离散程度
- 概率在数据中的应用- 抽样与误差:样本数据与总体分布的关系
- 异常值检测:用概率判断数据点是否异常
- 概率模型:用分布拟合真实数据
3. Clustering & Classification(聚类与分类)
这是机器学习的入门课,教你如何用算法给数据分组和打标签。
- 无监督学习:聚类- 聚类的定义:把相似数据分成组
- K-Means 算法:直观理解“质心”和迭代分组
- 聚类结果解读:组内相似性、组间差异性
- 有监督学习:分类- 分类问题定义:预测数据的类别标签
- 特征与标签:输入数据与预测目标的关系
- 分类器入门:简单规则、K近邻算法的直观理解
- 模型评估- 准确率:分类正确的比例
- 混淆矩阵:真阳性、假阳性、真阴性、假阴性
- 过拟合与欠拟合:模型在训练集和测试集上的表现差异
4. Regression(回归分析)
学习如何用数据建立预测模型,理解变量间的线性关系。
- 线性回归基础- 线性关系:y = ax + b 的直观理解
- 拟合直线:用数据点找到最佳拟合线
- 斜率与截距:模型参数的含义
- 回归的评估与解读- 决定系数 R²:模型对数据的解释程度
- 残差分析:预测值与真实值的差异
- 相关性 vs 因果性:从数据中发现关联,但不直接证明因果
- 回归的应用- 预测:用模型对新数据进行预测
- 趋势分析:用回归模型分析数据变化趋势
- 多元回归入门:多个自变量对因变量的影响
5. Predicting with Probability(概率预测)
学习如何用概率模型进行预测,理解预测的不确定性。
- 概率预测基础- 预测与概率:给出“可能结果”及其概率
- 贝叶斯定理:用新数据更新概率预测
- 先验概率与后验概率:初始信念与数据更新
- 概率模型的应用- 朴素贝叶斯分类:用概率进行文本/数据分类
- 马尔可夫链:用概率预测序列数据(如天气、文本)
- 蒙特卡洛模拟:用随机抽样进行预测
- 预测的不确定性- 置信区间:预测结果的可能范围
- 风险与决策:基于概率预测做出选择
- 模型校准:确保预测概率与实际频率一致
科学
1. Scientific Thinking(科学思维)
这门课教你像科学家一样思考,建立严谨的探究逻辑。
- 科学方法基础- 观察与提问:从现象中发现问题
- 提出假设:可验证的解释性猜想
- 实验设计:控制变量、设置对照组
- 数据分析与结论:从结果中验证/推翻假设
- 逻辑与推理- 归纳推理:从具体现象提炼规律
- 演绎推理:从普遍规律推导具体结论
- 因果与相关:区分“有关系”和“有因果”
- 批判性思维- 识别偏见:样本偏差、确认偏误等常见误区
- 证据评估:区分可靠证据与传闻/个案
- 模型与简化:理解科学模型的近似性与局限性
2. Circuits(电路基础)
从直观角度理解电路原理,掌握基础电路分析方法。
- 电路基本概念- 电流、电压、电阻:定义与单位
- 欧姆定律:V=IR 的直观理解与应用
- 电路元件:电源、导线、电阻、开关的作用
- 串并联电路- 串联电路:电流处处相等、总电压等于各部分电压之和
- 并联电路:各支路电压相等、总电流等于各支路电流之和
- 等效电阻:串并联电路的总电阻计算
- 电路分析与应用- 简单电路的电流/电压计算
- 短路与断路:故障分析与安全常识
- 电功率:P=VI 的概念与能量转换
3. Digital Circuits(数字电路)
学习数字电路的核心逻辑,理解计算机硬件的底层原理。
- 数字逻辑基础- 二进制:0和1如何表示信息
- 逻辑门:与门、或门、非门、异或门的功能与符号
- 真值表:用表格表示逻辑门的输入输出关系
- 组合逻辑电路- 半加器与全加器:用逻辑门实现加法运算
- 编码器/解码器:二进制与十进制的转换
- 多路选择器:根据控制信号选择输入
- 时序逻辑电路- 触发器:存储1位二进制信息的基本单元
- 寄存器:多个触发器组成的存储单元
- 计数器:用触发器实现数字计数
- 数字系统入门- 从逻辑门到计算机:CPU运算单元的直观理解
- 二进制运算:加法、减法、移位的电路实现
4. Kurzgesagt – Beyond the Notebook(Kurzgesagt 主题课程)
这门课结合知名科普频道 Kurzgesagt 的内容,用生动的方式讲解科学话题。
- 宇宙与天文学- 恒星的诞生与死亡:星云、主序星、超新星、黑洞
- 宇宙的演化:大爆炸、膨胀、暗物质与暗能量
- 行星与生命:宜居带、系外行星、生命起源假说
- 生物学与生命科学- 细胞与生命的基本单位:DNA、蛋白质、细胞代谢
- 进化与自然选择:物种演化、适应与灭绝
- 人体与健康:免疫系统、衰老、疾病的科学原理
- 物理学与哲学- 量子力学入门:波粒二象性、不确定性原理
- 时间与空间:相对论、时空弯曲、时间箭头
- 意识与存在:自由意志、人工智能、生命的意义
5. Science Puzzles(科学谜题)
通过趣味谜题,把科学知识变成可动手解决的问题,锻炼科学直觉。
- 物理谜题- 力学问题:平衡、杠杆、滑轮、摩擦力
- 流体问题:浮力、压强、水流运动
- 能量问题:势能、动能、能量守恒
- 化学谜题- 物质变化:溶解、反应、状态变化
- 周期表与元素:原子结构、化学键的直观理解
- 实验谜题:分离混合物、判断物质成分
- 生物谜题- 生态问题:食物链、种群数量变化
- 遗传谜题:性状传递、概率计算
- 人体谜题:感官、反射、生理机制
1. Logic(逻辑基础)
这门课是逻辑思维的入门,帮你建立严谨的推理框架。
- 命题与真值
- 命题的定义:能判断真假的陈述句
- 逻辑连接词:与(AND)、或(OR)、非(NOT)、蕴含(IF-THEN)、等价(IF AND ONLY IF)
- 真值表:用表格表示命题的真假关系
- 逻辑推理规则
- 演绎推理:从一般到特殊的必然推理
- 常见推理形式:肯定前件、否定后件、选言推理
- 逻辑谬误识别:循环论证、偷换概念、假两难等
- 集合与逻辑的关联
- 集合的并、交、补运算与逻辑连接词的对应关系
- 用韦恩图直观理解逻辑关系
2. Truth and Lies(真假谜题)
通过经典的“说真话/说谎话”谜题,训练逻辑推理能力。
- 基础真假谜题
- 单一说谎者/说真话者问题:通过矛盾推理找出真相
- 多角色真假问题:多个角色中部分说谎、部分说真话的推理
- 条件性陈述:“如果我说的是真的,那么…”这类陈述的分析
- 进阶真假谜题
- 自我指涉问题:“我在说谎”这类悖论的直观理解
- 分层推理:通过多层陈述逐步排除矛盾选项
- 信息最大化:如何通过最少的提问获取关键信息
3. Digital Circuits(数字电路)
(上一张截图已出现,这里做补充说明)
- 逻辑门与电路
- 与门、或门、非门、异或门的电路实现
- 用逻辑门搭建简单电路(如加法器、比较器)
- 真值表与电路功能的对应关系
- 组合与时序电路
- 组合逻辑:输出仅由当前输入决定
- 时序逻辑:输出与当前输入、历史状态都有关
- 触发器、寄存器的基本原理
4. Reasoning with Logic(逻辑推理进阶)
学习如何用逻辑工具解决复杂问题,提升抽象推理能力。
- 形式化推理
- 命题逻辑的形式化表达:用符号表示复杂陈述
- 谓词逻辑入门:量词(全称∀、存在∃)的直观理解
- 推理的有效性:判断推理形式是否必然有效
- 逻辑在问题中的应用
- 数独、数桥等逻辑谜题的通用解题思路
- 用逻辑约束解决规划问题(如安排日程、资源分配)
- 条件推理:根据多个条件逐步推导结论
- 逻辑与思维提升
- 抽象思维训练:从具体问题中提炼逻辑结构
- 多步推理:长链条推理中的逻辑断点识别
- 批判性思维:用逻辑工具分析论证的可靠性