学习编程、AI 与工程技术
涵盖编程语言、网页开发、机器学习、算法、机器人与硬件的深入教学资料 — 完全免费,对所有人开放。
浏览分类
编程语言
Python、C、C++、Java、JavaScript、TypeScript、Go、R 与 Haskell 教程,从入门语法到高级技巧。
网页开发
HTML5、React、Angular、Next.js、Vite 与现代前端开发指南与项目。
后端开发
Node.js、NestJS、Spring Boot、Python 后端、Socket、Nginx 与支付集成的服务器端开发。
算法与数据结构
排序、树、哈希、图算法、KMP、LeetCode 练习与算法分析教材。
人工智能与机器学习
机器学习、检索增强生成(RAG)、AI 应用与网络爬虫教程。
数据库
SQL 与 NoSQL 数据库设计、查询、优化与实践练习。
计算机科学基础
计算机组成、操作系统、Linux 基础与核心计算机科学理论。
数学与统计
概率、统计、博弈论与机器学习背后的数学,含完整例题。
硬件与嵌入式系统
Arduino、RISC-V、MSP430、PLC、Linux 驱动与嵌入式系统工程。
机器人与自主系统
ROS 2、人形机器人、无人机与自动驾驶系统。
网络与 DevOps
计算机网络、TCP/IP、CI/CD 流水线与 DevOps 实践。
移动应用开发
Android 与 iOS 应用开发教程。
量化金融与区块链
量化金融、交易系统与区块链技术。
项目与实例研究
真实世界项目:支付网关微服务、全栈应用、Django 后端、RAG 系统等。
英语学习
从基础到进阶的英语语法,附答案与词汇册。
最新文章
演算法教材地圖 — 學習順序與涵蓋範圍
本篇是索引,不是另一套演算法。它把資料夾裡的教學文件對上三份公開課綱裡會出現、而本站原先沒有獨立筆記的主題,並給出一條讀的順序。已有長篇的圖論、NP、KMP、模糊搜尋、模擬退火與蒙地卡羅不在這次重寫之列,只標出它們該在什麼時候讀。
阅读文章 →攤還分析(Amortized Analysis)— 方法論完整教材
並查集與伸展樹各自證明了「單次可以很慢,一串操作仍然很快」。那兩篇把位能算在特定結構上。本篇把三種通用算法寫清楚:聚集法、記帳法、位能法,並用二元計數器與動態陣列當可以手算的例子。之後再回去看並查集與伸展樹,會知道它們只是位能函數不同。
阅读文章 →B 樹與 B+ 樹(B-Tree / B+ Tree)— 完整教材
平衡 BST 教材把 B 樹列成「磁碟用的多路樹」,但沒有一次插入分裂的推演。記憶體內的紅黑樹每個節點只有一個鍵,磁碟一次讀寫卻是一整頁。B 樹讓一個節點裝滿一頁,樹高跟著頁數的對數走,而不是鍵數的對數乘上一個很大的常數。
阅读文章 →二元搜尋(Binary Search)— 完整教材
分析教材與遞迴教材都把二元搜尋當成 (O(log n)) 的例子,但沒有處理邊界、lower_bound / upper_bound,也沒有「對答案二分」——後者在課程與實作裡比在陣列裡找一個數更常出現。本篇把迴圈不變量寫死,避免 off-by-one。
阅读文章 →分治法與主定理(Divide and Conquer / Master Theorem)— 完整教材
分析教材用最大子段和展示了一次分治,遞迴教材列出了合併排序與快速排序,但沒有把「遞迴式怎麼解」收成可以套用的定理。本篇補上替換法的一個完整例子、遞迴樹的直覺,以及主定理的三個標準情況。
阅读文章 →動態規劃(Dynamic Programming)— 方法論完整教材
既有教材把動態規劃嵌在個別問題裡:0/1 背包、子集和、編輯距離、漢彌爾頓路徑的狀態壓縮。本篇把「怎麼設計一題 DP」抽成可遷移的方法:狀態、轉移、順序、還原方案。讀完再回去看那些專題,會知道它們只是同一套骨架的不同填法。
阅读文章 →貪心演算法(Greedy Algorithms)— 方法論完整教材
貪心每次做當下看起來最好的選擇,並且不再反悔。它比動態規劃快,也比動態規劃容易寫錯:很多問題「看起來能貪」其實不能。本篇用交換論證說明什麼時候貪心是對的,並把活動選擇、分數背包、霍夫曼編碼做成可手算的完整例子。
阅读文章 →堆積與優先佇列(Binary Heap / Priority Queue)— 完整教材
本篇補上既有排序教材裡「堆積排序」只有程式、沒有資料結構本身的缺口。讀完應能獨立實作二元堆積、說明 build-heap 為什麼是線性時間,並知道 Dijkstra、Prim、Top-K 為什麼都站在優先佇列上。
阅读文章 →數論演算法(GCD、擴展歐幾里得、模反元素、快速冪)— 完整教材
分析教材把歐幾里得演算法與快速冪當成 (O(log n)) 的例子,沒有把它們接成「模意義下的除法」。競賽與密碼學導論裡,這四個是同一條鏈:gcd 判斷互質,擴展版求出係數,係數就是模反元素,快速冪用來算大指數。本篇只做到正確計算與複雜度,不討論如何攻擊實際系統。
阅读文章 →