Hello 算法 1.1.0 Kotlin版愿这本书在你的脑海中轻轻响起,留下独特而深刻的旋律。 第 0 章 前言 hello‑algo.com 2 0.1 关于本书 本项目旨在创建一本开源、免费、对新手友好的数据结构与算法入门教程。 ‧ 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂,学习曲线平滑。 ‧ 算法源代码皆可一键运行,支持 Python、C++、Java、C#、Go、Swift、JavaScript、TypeScript、Dart、 标题注释,用于标注函数、类、测试样例等 */ // 内容注释,用于详解代码 /** * 多行 * 注释 */ 0.2.2 在动画图解中高效学习 相较于文字,视频和图片具有更高的信息密度和结构化程度,更易于理解。在本书中,重点和难点知识将主 要通过动画以图解形式展示,而文字则作为解释与补充。 如果你在阅读本书时,发现某段内容提供了如图 0‑2 所示的动画图解,请以图为主、以文字为辅,综合两者 图相较于链表,提供了更丰富的逻辑信息,但需要占用更大的内存空间。 1.2.3 数据结构与算法的关系 如图 1‑4 所示,数据结构与算法高度相关、紧密结合,具体表现在以下三个方面。 ‧ 数据结构是算法的基石。数据结构为算法提供了结构化存储的数据,以及操作数据的方法。 ‧ 算法是数据结构发挥作用的舞台。数据结构本身仅存储数据信息,结合算法才能解决特定问题。 ‧ 算法通常可以基于不同的数据结构实现,但执行效率可能相差很大,选择合适的数据结构是关键。0 码力 | 381 页 | 18.47 MB | 1 年前3
 Hello 算法 1.2.0 简体中文 Kotlin 版标题注释,用于标注函数、类、测试样例等 */ // 内容注释,用于详解代码 /** * 多行 * 注释 */ 0.2.2 在动画图解中高效学习 相较于文字,视频和图片具有更高的信息密度和结构化程度,更易于理解。在本书中,重点和难点知识将主 要通过动画以图解形式展示,而文字则作为解释与补充。 如果你在阅读本书时,发现某段内容提供了如图 0‑2 所示的动画图解,请以图为主、以文字为辅,综合两者 图相较于链表,提供了更丰富的逻辑信息,但需要占用更大的内存空间。 1.2.3 数据结构与算法的关系 如图 1‑4 所示,数据结构与算法高度相关、紧密结合,具体表现在以下三个方面。 ‧ 数据结构是算法的基石。数据结构为算法提供了结构化存储的数据,以及操作数据的方法。 ‧ 算法为数据结构注入生命力。数据结构本身仅存储数据信息,结合算法才能解决特定问题。 ‧ 算法通常可以基于不同的数据结构实现,但执行效率可能相差很大,选择合适的数据结构是关键。 将“Hello 算法”中的所有字符都 编码为 2 字节长度。这样系统就可以每隔 2 字节解析一个字符,恢复这个短语的内容了。 图 3‑7 Unicode 编码示例 然而 ASCII 码已经向我们证明,编码英文只需 1 字节。若采用上述方案,英文文本占用空间的大小将会是 ASCII 编码下的两倍,非常浪费内存空间。因此,我们需要一种更加高效的 Unicode 编码方法。 3.4.4 UTF‑80 码力 | 382 页 | 18.48 MB | 10 月前3
 Kotlin 1.9.10 官方文档 中文版
在此处可见 循环中的 break 与 continue 在循环中 Kotlin 支持传统的 break 与 continue 操作符。参见返回与跳转。 返回与跳转 Kotlin 有三种结构化跳转表达式: return 默认从最直接包围它的函数或者匿名函数返回。 break 终止最直接包围它的循环。 continue 继续下一次最直接包围它的循环。 所有这些表达式都可以用作更大表达式的一部分: 对象表达式是在使用他们的地方立即执行(及初始化)的。 对象声明是在第一次被访问到时延迟初始化的。 伴生对象的初始化是在相应的类被加载(解析)时,与 Java 静态初始化 器的语义相匹配 。 委托 委托模式已经证明是实现继承的一个很好的替代方式, 而 Kotlin 可以零样板 代码地原生支持它。 Derived 类可以通过将其所有公有成员都委托给指定对象来实现一个接口 Base : interface 一个对象是否已冻结,可以使用扩展属性 isFrozen 来检测,如果冻结了就可 以共享。目前,Kotlin/Native 运行时只能在枚举对象创建后进行冻结,尽管将 来可能实现自动冻结某些可证明不可变的对象。 对象子图分离 An object subgraph without external references can be disconnected using DetachedObjectGraph0 码力 | 3753 页 | 29.69 MB | 1 年前3
 Kotlin 官方文档中文版  v1.9break 与 continue 在循环中 Kotlin 支持传统的 break 与 continue 操作符。参见返回与跳转。 条件与循环 464 返回与跳转 Kotlin 有三种结构化跳转表达式: return 默认从最直接包围它的函数或者匿名函数返回。 break 终止最直接包围它的循环。 continue 继续下一次最直接包围它的循环。 所有这些表达式都可以用作更大表达式的一部分: 对象声明是在第一次被访问到时延迟初始化的。 伴生对象的初始化是在相应的类被加载(解析)时,与 Java 静态初始化器的语义相匹配 。 对象表达式与对象声明 539 委托 委托模式已经证明是实现继承的一个很好的替代方式, 而 Kotlin 可以零样板代码地原生支持 它。 Derived 类可以通过将其所有公有成员都委托给指定对象来实现一个接口 Base : interface 一个对象是否已冻结,可以使用扩展属性 isFrozen 来检测,如果冻结了就可以共享。目 前,Kotlin/Native 运行时只能在枚举对象创建后进行冻结,尽管将来可能实现自动冻结某些可 证明不可变的对象。 对象子图分离 An object subgraph without external references can be disconnected using DetachedObjectGraph0 码力 | 2049 页 | 45.06 MB | 1 年前3
共 4 条
- 1
 













