Hello 算法 1.2.0 简体中文 Swift 版那个时代的研究人员就在想:如果推出一个足够完整的字符集,将世界范围内的所有语言和符号都收录其 中,不就可以解决跨语言环境和乱码问题了吗?在这种想法的驱动下,一个大而全的字符集 Unicode 应运而 生。 Unicode 的中文名称为“统一码”,理论上能容纳 100 多万个字符。它致力于将全球范围内的字符纳入统一 的字符集之中,提供一种通用的字符集来处理和显示各种语言文字,减少因为编码标准不同而产生的乱码问 题。 自 到 4 字节 来表示一个字符,根据字符的复杂性而变。ASCII 字符只需 1 字节,拉丁字母和希腊字母需要 2 字节,常用 第 3 章 数据结构 www.hello‑algo.com 62 的中文字符需要 3 字节,其他的一些生僻字符需要 4 字节。 UTF‑8 的编码规则并不复杂,分为以下两种情况。 ‧ 对于长度为 1 字节的字符,将最高位设置为 0 ,其余 7 位设置为 Unicode 更占用空间,特别是 对于 ASCII 字符占比较高的文本。 从存储空间占用的角度看,使用 UTF‑8 表示英文字符非常高效,因为它仅需 1 字节;使用 UTF‑16 编码某些 非英文字符(例如中文)会更加高效,因为它仅需 2 字节,而 UTF‑8 可能需要 3 字节。 从兼容性的角度看,UTF‑8 的通用性最佳,许多工具和库优先支持 UTF‑8 。 第 3 章 数据结构 www.hello‑algo0 码力 | 379 页 | 18.48 MB | 10 月前3
Hello 算法 1.2.0 繁体中文 Swift 版那個時代的研究人員就在想:如果推出一個足夠完整的字符集,將世界範圍內的所有語言和符號都收錄其 中,不就可以解決跨語言環境和亂碼問題了嗎?在這種想法的驅動下,一個大而全的字符集 Unicode 應運而 生。 Unicode 的中文名稱為“統一碼”,理論上能容納 100 多萬個字元。它致力於將全球範圍內的字元納入統一 的字符集之中,提供一種通用的字符集來處理和顯示各種語言文字,減少因為編碼標準不同而產生的亂碼問 題。 自 4 位元 組來表示一個字元,根據字元的複雜性而變。ASCII 字元只需 1 位元組,拉丁字母和希臘字母需要 2 位元組, 第 3 章 資料結構 www.hello‑algo.com 62 常用的中文字元需要 3 位元組,其他的一些生僻字元需要 4 位元組。 UTF‑8 的編碼規則並不複雜,分為以下兩種情況。 ‧ 對於長度為 1 位元組的字元,將最高位設定為 0 ,其餘 7 位設定為 Unicode 更佔用空間,特別 是對於 ASCII 字元佔比較高的文字。 從儲存空間佔用的角度看,使用 UTF‑8 表示英文字元非常高效,因為它僅需 1 位元組;使用 UTF‑16 編碼某 些非英文字元(例如中文)會更加高效,因為它僅需 2 位元組,而 UTF‑8 可能需要 3 位元組。 從相容性的角度看,UTF‑8 的通用性最佳,許多工具和庫優先支持 UTF‑8 。 第 3 章 資料結構 www.hello‑algo0 码力 | 379 页 | 18.79 MB | 10 月前3
Hello 算法 1.1.0 Swift版那个时代的研究人员就在想:如果推出一个足够完整的字符集,将世界范围内的所有语言和符号都收录其 中,不就可以解决跨语言环境和乱码问题了吗?在这种想法的驱动下,一个大而全的字符集 Unicode 应运而 生。 Unicode 的中文名称为“统一码”,理论上能容纳 100 多万个字符。它致力于将全球范围内的字符纳入统一 的字符集之中,提供一种通用的字符集来处理和显示各种语言文字,减少因为编码标准不同而产生的乱码问 题。 自 编码方法。它是一种可变长度的编码,使用 1 到 4 字节 来表示一个字符,根据字符的复杂性而变。ASCII 字符只需 1 字节,拉丁字母和希腊字母需要 2 字节,常用 第 3 章 数据结构 hello‑algo.com 62 的中文字符需要 3 字节,其他的一些生僻字符需要 4 字节。 UTF‑8 的编码规则并不复杂,分为以下两种情况。 ‧ 对于长度为 1 字节的字符,将最高位设置为 0 ,其余 7 位设置为 Unicode 更占用空间,特别是 对于 ASCII 字符占比较高的文本。 从存储空间占用的角度看,使用 UTF‑8 表示英文字符非常高效,因为它仅需 1 字节;使用 UTF‑16 编码某些 非英文字符(例如中文)会更加高效,因为它仅需 2 字节,而 UTF‑8 可能需要 3 字节。 从兼容性的角度看,UTF‑8 的通用性最佳,许多工具和库优先支持 UTF‑8 。 第 3 章 数据结构 hello‑algo0 码力 | 379 页 | 18.47 MB | 1 年前3
Hello 算法 1.0.0 Swift版那个时代的研究人员就在想:如果推出一个足够完整的字符集,将世界范围内的所有语言和符号都收录其 中,不就可以解决跨语言环境和乱码问题了吗?在这种想法的驱动下,一个大而全的字符集 Unicode 应运而 生。 「Unicode」的中文名称为“统一码”,理论上能容纳 100 多万个字符。它致力于将全球范围内的字符纳入统 一的字符集之中,提供一种通用的字符集来处理和显示各种语言文字,减少因为编码标准不同而产生的乱码 问题。 自 编码方法。它是一种可变长度的编码,使用 1 到 4 字节 来表示一个字符,根据字符的复杂性而变。ASCII 字符只需 1 字节,拉丁字母和希腊字母需要 2 字节,常用 第 3 章 数据结构 hello‑algo.com 62 的中文字符需要 3 字节,其他的一些生僻字符需要 4 字节。 UTF‑8 的编码规则并不复杂,分为以下两种情况。 ‧ 对于长度为 1 字节的字符,将最高位设置为 0 ,其余 7 位设置为 Unicode 更占用空间,特别是 对于 ASCII 字符占比较高的文本。 从存储空间占用的角度看,使用 UTF‑8 表示英文字符非常高效,因为它仅需 1 字节;使用 UTF‑16 编码某些 非英文字符(例如中文)会更加高效,因为它仅需 2 字节,而 UTF‑8 可能需要 3 字节。 从兼容性的角度看,UTF‑8 的通用性最佳,许多工具和库优先支持 UTF‑8 。 第 3 章 数据结构 hello‑algo0 码力 | 378 页 | 17.59 MB | 1 年前3
Hello 算法 1.0.0b5 Swift版已成为国际上使用最广泛的 Unicode 编码方法。它是一种可变长的编码,使用 1 到 4 个字节 来表示一个字符,根据字符的复杂性而变。ASCII 字符只需要 1 个字节,拉丁字母和希腊字母需要 2 个字节, 常用的中文字符需要 3 个字节,其他的一些生僻字符需要 4 个字节。 UTF‑8 的编码规则并不复杂,分为以下两种情况。 ‧ 对于长度为 1 字节的字符,将最高位设置为 0、其余 7 位设置为 Unicode 字符占比较高的文本。 第 3 章 数据结构 hello‑algo.com 61 从存储空间的角度看,使用 UTF‑8 表示英文字符非常高效,因为它仅需 1 个字节;使用 UTF‑16 编码某些非 英文字符(例如中文)会更加高效,因为它只需要 2 个字节,而 UTF‑8 可能需要 3 个字节。 从兼容性的角度看,UTF‑8 的通用性最佳,许多工具和库都优先支持 UTF‑8 。 3.4.5 编程语言的字符编码 字符集是常用的中文字 符集,共收录两万多个汉字。Unicode 致力于提供一个完整的字符集标准,收录世界内各种语言的字 符,从而解决由于字符编码方法不一致而导致的乱码问题。 ‧ UTF‑8 是最受欢迎的 Unicode 编码方法,通用性非常好。它是一种变长的编码方法,具有很好的扩展 性,有效提升了存储空间的使用效率。UTF‑16 和 UTF‑32 是等长的编码方法。在编码中文时,UTF‑160 码力 | 376 页 | 30.70 MB | 1 年前3
Hello 算法 1.0.0b1 Swift版给出的写作排版建议,以及优秀开源项目 Material‑for‑MkDocs 。 本书鼓励“手脑并用”的学习方式,在这点上受到了《动手学深度学习》很大影响,也在此向各位同学强烈推 荐这本著作,包括中文版、英文版、李沐老师 bilibili 主页。 在写作过程中,我阅读了许多数据结构与算法的教材与文章,这些著作为本书作出了很好的榜样,保证了本书 内容的正确性与质量,感谢前辈们的精彩创作! 感 Tree」的所有层的结点都被完全填满。在完美二叉树中,所有结点的度 = 2 ;若 树高度 = ℎ ,则结点总数 = 2ℎ+1 − 1 ,呈标准的指数级关系,反映着自然界中常见的细胞分裂。 � 在中文社区中,完美二叉树常被称为「满二叉树」,请注意与完满二叉树区分。 Figure 7‑4. 完美二叉树 完全二叉树 「完全二叉树 Complete Binary Tree」只有最底层的结点未被填满,且最底层结点尽量靠左填充。0 码力 | 190 页 | 14.71 MB | 1 年前3
Hello 算法 1.0.0b2 Swift版给出的写作排版建议,以及优秀开源项目 Material‑for‑MkDocs 。 本书鼓励“手脑并用”的学习方式,在这点上受到了《动手学深度学习》很大影响,也在此向各位同学强烈推 荐这本著作,包括中文版、英文版、李沐老师 bilibili 主页。 在写作过程中,我阅读了许多数据结构与算法的教材与文章,这些著作为本书作出了很好的榜样,保证了本书 内容的正确性与质量,感谢各位老师与前辈的精彩创作! Tree」的所有层的结点都被完全填满。在完美二叉树中,所有结点的度 = 2 ;若 树高度 = ℎ ,则结点总数 = 2ℎ+1 − 1 ,呈标准的指数级关系,反映着自然界中常见的细胞分裂。 � 在中文社区中,完美二叉树常被称为「满二叉树」,请注意与完满二叉树区分。 Figure 7‑4. 完美二叉树 完全二叉树 「完全二叉树 Complete Binary Tree」只有最底层的结点未被填满,且最底层结点尽量靠左填充。0 码力 | 199 页 | 15.72 MB | 1 年前3
共 7 条
- 1













