Skip to content

CS 基础 (Computer Science Foundations)

这里汇集了计算机科学的基石课程,涵盖数学基础、数字逻辑与通用算法理论。这些知识不依赖于特定的编程语言或硬件平台,是构建上层建筑的地基。

模块导航

1. 离散数学 (Discrete Mathematics)

基于 UCB CS70: Discrete Mathematics and Probability Theory

这门课并非传统的离散数学,而是离散数学与概率论的深度结合。它不仅教授数学证明的技巧,更着重于如何用数学语言描述计算机系统中的核心问题(如密码学、纠错码、负载均衡等)。

  • 核心内容
    • 逻辑与证明:命题逻辑、一阶逻辑、数学归纳法、稳定匹配问题
    • 图论:图的基本性质、欧拉回路、超立方体
    • 数论与应用:模运算、RSA 加密算法、多项式插值、纠错码 (Error Correction)
    • 可计算性:对角线论证、停机问题
    • 概率论:离散概率空间、贝叶斯定理、随机变量、期望与方差、马尔可夫链
  • 👉 进入学习笔记

2. 數位邏輯設計 (Digital Logic Design)

基於 NTHU 10801: 數位邏輯設計 (Digital Logic Design)

本課程從最底層的邏輯閘 (Logic Gates) 出發,一路向上構建出完整的處理器 (Processor)。課程內容極為紮實,涵蓋了從布林代數到現代計算機體系結構的關鍵技術。

  • 核心內容
    • 組合邏輯:布林代數、卡諾圖 (K-Map)、多工器 (Mux)、解碼器 (Decoder)
    • 運算電路:二補數系統、Booth 乘法演算法、Wallace Tree 加法樹
    • 時序邏輯:正反器 (Flip-Flops)、暫存器、計數器、有限狀態機 (FSM) 設計與優化
    • 系統設計:演算法狀態機 (ASM)、微程式控制 (Microprogramming)、管線化 (Pipelining)、脈動陣列 (Systolic Arrays)
    • 實作技術:Verilog HDL、FPGA 架構、可測試性設計 (DFT)
  • 👉 進入學習筆記

3. 数据结构 (Data Structures)

基于 浙江大学: 数据结构 (Data Structures)

本课程是计算机科学的核心基础课,系统介绍了数据的组织、存储与运算方法。课程不仅涵盖了经典的数据结构(如树、图、堆、散列表),还深入讲解了与之紧密相关的基础算法(如排序、最短路径、MST),并强调了时间与空间复杂度的分析能力。

  • 核心内容
    • 基础理论:算法复杂度分析、最大子列和问题
    • 线性结构:链表、堆栈、队列及其应用(多项式运算)
    • 树形结构:二叉树遍历、二叉搜索树 (BST)、平衡树 (AVL)、堆 (Heap)、哈夫曼树、并查集
    • 图形结构:图的遍历 (DFS/BFS)、最短路径 (Dijkstra/Floyd)、最小生成树 (Prim/Kruskal)、拓扑排序
    • 排序与查找:希尔排序、归并排序、快速排序、散列查找 (Hashing)、KMP 算法
  • 👉 进入学习笔记

版权所有 © 2025-至今 赵熠楷(Yikai Zhao)