Hello 算法 1.2.0 繁体中文 Swift 版Hello 演算法 Swift 語言版 作者:靳宇棟(@krahets) 程式碼審閱:@nuomi1 Release 1.2.0 2024‑12‑06 序 兩年前,我在力扣上分享了“劍指 Offer”系列題解,受到了許多讀者的鼓勵與支持。在與讀者交流期間,我 最常被問到的一個問題是“如何入門演算法”。漸漸地,我對這個問題產生了濃厚的興趣。 兩眼一抹黑地刷題似乎是最受歡迎的方法,簡單、 付出的寶貴“注意力”,我會竭盡所能,投入最大的“注意力” 來完成本書的創作。 本人自知學疏才淺,書中內容雖然已經過一段時間的打磨,但一定仍有許多錯誤,懇請各位老師與同學批評 指正。 本書中的程式碼附有可一鍵執行的原始檔,託管於 github.com/krahets/hello‑algo 倉庫。 動畫在 PDF 內的展示效果有限,可訪問 www.hello‑algo.com 網頁版以獲得更佳的閱讀體驗。 ——李沐,亞馬遜資深首席科學家 電腦的出現為世界帶來了巨大的變革,它憑藉高速的運算能力與卓越的可程式化特性,成為執行演算法 與處理資料的理想媒介。無論是電玩遊戲的逼真畫面、自動駕駛的智慧決策,還是 AlphaGo 的精彩棋局、 ChatGPT 的自然互動,這些應用都是演算法在電腦上的精妙演繹。 事實上,在電腦問世之前,演算法和資料結構就已經存在於世界的各個角落。早期的演算法相對簡單,例如 古0 码力 | 379 页 | 18.79 MB | 10 月前3
Hello 算法 1.1.0 Swift版‧ C 语言是过程式编程语言,没有面向对象的概念,所以只有函数。但我们可以通过创建结构体(struct) 来模拟面向对象编程,与结构体相关联的函数就相当于其他编程语言中的方法。 ‧ Java 和 C# 是面向对象的编程语言,代码块(方法)通常作为某个类的一部分。静态方法的行为类似于 函数,因为它被绑定在类上,不能访问特定的实例变量。 ‧ C++ 和 Python 既支持过程式编程(函数),也支持面向对象编程(方法)。 部分名词在简体中文和繁体中文下的叫法不同。 表 16‑1 数据结构与算法的重要名词 English 简体中文 繁体中文 algorithm 算法 演算法 data structure 数据结构 資料結構 code 代码 程式碼 file 文件 檔案 function 函数 函式 method 方法 方法 variable 变量 變數 asymptotic complexity analysis 渐近复杂度分析 漸近複雜度分析 asymptotic upper bound 渐近上界 漸近上界 第 16 章 附录 hello‑algo.com 368 English 简体中文 繁体中文 sign‑magnitude 原码 原碼 1’s complement 反码 一補數 2’s complement 补码 二補數 array 数组 陣列 index 索引 索引 linked list 链表 鏈結串列 linked0 码力 | 379 页 | 18.47 MB | 1 年前3
Hello 算法 1.2.0 简体中文 Swift 版‧ C 语言是过程式编程语言,没有面向对象的概念,所以只有函数。但我们可以通过创建结构体(struct) 来模拟面向对象编程,与结构体相关联的函数就相当于其他编程语言中的方法。 ‧ Java 和 C# 是面向对象的编程语言,代码块(方法)通常作为某个类的一部分。静态方法的行为类似于 函数,因为它被绑定在类上,不能访问特定的实例变量。 ‧ C++ 和 Python 既支持过程式编程(函数),也支持面向对象编程(方法)。 部分名词在简体中文和繁体中文下的叫法不同。 表 16‑1 数据结构与算法的重要名词 English 简体中文 繁体中文 algorithm 算法 演算法 data structure 数据结构 資料結構 code 代码 程式碼 file 文件 檔案 function 函数 函式 method 方法 方法 variable 变量 變數 asymptotic complexity analysis 渐近复杂度分析 漸近複雜度分析 recursion tree 递归树 遞迴樹 big‑? notation 大 ? 记号 大 ? 記號 asymptotic upper bound 渐近上界 漸近上界 sign‑magnitude 原码 原碼 1’s complement 反码 一補數 2’s complement 补码 二補數 array 数组 陣列 index 索引 索引 linked list 链表 鏈結串列 linked0 码力 | 379 页 | 18.48 MB | 10 月前3
Hello 算法 1.0.0b5 Swift版‧ C 语言是过程式编程语言,没有面向对象的概念,所以只有函数。但我们可以通过创建 结构体(struct)来模拟面向对象编程,与结构体相关联的函数就相当于其他语言中的 方法。 ‧ Java 和 C# 是面向对象的编程语言,代码块(方法)通常都是作为某个类的一部分。静 态方法的行为类似于函数,因为它被绑定在类上,不能访问特定的实例变量。 ‧ C++ 和 Python 既支持过程式编程(函数),也支持面向对象编程(方法)。0 码力 | 376 页 | 30.70 MB | 1 年前3
Hello 算法 1.0.0 Swift版‧ C 语言是过程式编程语言,没有面向对象的概念,所以只有函数。但我们可以通过创建结构体(struct) 来模拟面向对象编程,与结构体相关联的函数就相当于其他编程语言中的方法。 ‧ Java 和 C# 是面向对象的编程语言,代码块(方法)通常作为某个类的一部分。静态方法的行为类似于 函数,因为它被绑定在类上,不能访问特定的实例变量。 ‧ C++ 和 Python 既支持过程式编程(函数),也支持面向对象编程(方法)。0 码力 | 378 页 | 17.59 MB | 1 年前3
共 5 条
- 1













