Hello 算法 1.2.0 繁体中文 TypeScript 版. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 第 13 章 回溯 276 13.1 回溯演算法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277 13.2 全排列問題 資料結構與演算法入門教程。 ‧ 全書採用動畫圖解,內容清晰易懂、學習曲線平滑,引導初學者探索資料結構與演算法的知識地圖。 ‧ 源程式碼可一鍵執行,幫助讀者在練習中提升程式設計技能,瞭解演算法工作原理和資料結構底層實 現。 ‧ 提倡讀者互助學習,歡迎大家在評論區提出問題與分享見解,在交流討論中共同進步。 0.1.1 讀者物件 若你是演算法初學者,從未接觸過演算法,或者已經有一些刷題經驗,對資料結構與演算法有模糊的認識, 資料結構:基本資料型別和資料結構的分類方法。陣列、鏈結串列、堆疊、佇列、雜湊表、樹、堆積、 圖等資料結構的定義、優缺點、常用操作、常見型別、典型應用、實現方法等。 ‧ 演算法:搜尋、排序、分治、回溯、動態規劃、貪婪等演算法的定義、優缺點、效率、應用場景、解題 步驟和示例問題等。 第 0 章 前言 www.hello‑algo.com 3 圖 0‑1 本書主要內容 0.1.3 致謝 本0 码力 | 384 页 | 18.80 MB | 10 月前3
Hello 算法 1.0.0b5 TypeScript 版. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 第 13 章 回溯 273 13.1 回溯算法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 13.2 全排列问题 例等。 ‧ 数据结构:基本数据类型,数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤、 示例题目等。 第 0 章 前言 hello‑algo.com 3 图 0‑1 Hello 算法内容结构 0.1.3 致谢 的见解,帮助他人进步。 图 0‑6 评论区示例 0.2.5 算法学习路线 从总体上看,我们可以将学习数据结构与算法的过程划分为三个阶段。 1. 算法入门。我们需要熟悉各种数据结构的特点和用法,学习不同算法的原理、流程、用途和效率等方面 内容。 2. 刷算法题。建议从热门题目开刷,如剑指 Offer和LeetCode Hot 100,先积累至少 100 道题目,熟悉 主流的算法问题。初次刷题时,“知识0 码力 | 378 页 | 30.70 MB | 1 年前3
Hello 算法 1.1.0 TypeScript版. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273 第 13 章 回溯 275 13.1 回溯算法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276 13.2 全排列问题 例等。 ‧ 数据结构:基本数据类型和数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤 和示例问题等。 第 0 章 前言 hello‑algo.com 3 图 0‑1 本书主要内容 0.1.3 致谢 本书在开源社 图 0‑7 评论区示例 0.2.5 算法学习路线 从总体上看,我们可以将学习数据结构与算法的过程划分为三个阶段。 1. 阶段一:算法入门。我们需要熟悉各种数据结构的特点和用法,学习不同算法的原理、流程、用途和效 率等方面的内容。 2. 阶段二:刷算法题。建议从热门题目开刷,先积累至少 100 道题目,熟悉主流的算法问题。初次刷题 时,“知识遗忘”可能是一个挑战,但请放心,这是很正常的。我们可以按照“艾宾浩斯遗忘曲线”来0 码力 | 383 页 | 18.49 MB | 1 年前3
Hello 算法 1.2.0 简体中文 TypeScript 版. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273 第 13 章 回溯 275 13.1 回溯算法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276 13.2 全排列问题 本项目旨在创建一本开源、免费、对新手友好的数据结构与算法入门教程。 ‧ 全书采用动画图解,内容清晰易懂、学习曲线平滑,引导初学者探索数据结构与算法的知识地图。 ‧ 源代码可一键运行,帮助读者在练习中提升编程技能,了解算法工作原理和数据结构底层实现。 ‧ 提倡读者互助学习,欢迎大家在评论区提出问题与分享见解,在交流讨论中共同进步。 0.1.1 读者对象 若你是算法初学者,从未接触过算法,或者已经有一些刷题经验,对数据结构与算法有模糊的认识,在会与 例等。 ‧ 数据结构:基本数据类型和数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤 和示例问题等。 第 0 章 前言 www.hello‑algo.com 3 图 0‑1 本书主要内容 0.1.3 致谢 本书0 码力 | 383 页 | 18.49 MB | 10 月前3
Hello 算法 1.0.0b1 TypeScript 版数据结构:常用的基本数据类型,数据在内存中的存储方式、数据结构分类方法。数组、链表、栈、队列、 散列表、树、堆、图等数据结构,内容包括定义、优劣势、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:查找算法、排序算法、搜索与回溯、动态规划、分治算法,内容包括定义、使用场景、优劣势、时 空效率、实现方法、示例题目等。 0. 写在前面 hello‑algo.com 2 Figure 0‑1. Hello 算法内容结构 0 如何使用本书 建议通读本节内容,以获取最佳阅读体验。 0.2.1. 算法学习路线 总体上看,我认为可将学习数据结构与算法的过程分为三个阶段。 1. 算法入门。熟悉各种数据结构的特点、用法,学习各种算法的原理、流程、用途、效率等。 2. 刷算法题。可以先从热门题单开刷,推荐剑指 Offer、LeetCode Hot 100,先积累至少 100 道题量,熟 悉大多数的算法问题。刚开始刷题时,“遗忘”是 算法题目,实际上同时考察了数据结构和算法两部分知识。 1.3. 小结 ‧ 算法在生活中随处可见,并不高深莫测。我们已经不知不觉地学习到许多“算法”,用于解决生活中大大 小小的问题。 ‧“查字典”的原理和二分查找算法一致。二分体现分而治之的重要算法思想。 ‧ 算法是在有限时间内解决特定问题的一组指令或操作步骤,数据结构是在计算机中组织与存储数据的方 式。 ‧ 数据结构与算法两者紧密联系。数据0 码力 | 186 页 | 14.71 MB | 1 年前3
TypeScript Handbook(中文版)
animate({ deltaX: 100, deltaY: 100, easing: "ease-inout" 在 TypeScript 1.8 中, 我们新增了字符串字面量类型. 这些类型和字符串字面量的写 法一致, 只是写在类型的位置. TypeScript Handbook(中文版) 168 TypeScript 1.8 用户现在可以确保类型系统会捕获这样的错误. 这里是我们使用了字符串字面量类 TypeScript的未来版本中考虑实现。 TypeScript Handbook(中文版) 245 变量声明 介绍 TypeScript的核心原则之一是对值所具有的结构进行类型检查。 它有时被称做“鸭式 辨型法”或“结构性子类型化”。 在TypeScript里,接口的作用就是为这些类型命名和 为你的代码或第三方代码定义契约。 接口初探 下面通过一个简单示例来观察接口是如何工作的: function width: 100 }; let mySquare = createSquare(squareOptions); 要留意,在像上面一样的简单代码里,你可能不应该去绕开这些检查。 对于包含方 法和内部状态的复杂对象字面量来讲,你可能需要使用这些技巧,但是大部额外属 性检查错误是真正的bug。 就是说你遇到了额外类型检查出的错误,比如“option bags”,你应该去审查一下你的类型声明。0 码力 | 557 页 | 7.48 MB | 1 年前3
TypeScript 4.0 使用手册
本中考虑实现。 展开 变量声明 - 106 - 本文档使用 书栈网 · BookStack.CN 构建 TypeScript 的核心原则之一是对值所具有的_结构_进行类型检查。 它有时被称做“鸭式辨型 法”或“结构性子类型化”。 在 TypeScript 里,接口的作用就是为这些类型命名和为你的代码或第 三方代码定义契约。 下面通过一个简单示例来观察接口是如何工作的: 1. function p 的属性之前,我们_一定_要调用 super() 。 这个是 TypeScript强制执行的一条重要规则。 这个例子演示了如何在子类里可以重写父类的方法。 Snake 类和 Horse 类都创建了 move 方 法,它们重写了从 Animal 继承来的 move 方法,使得 move 方法根据不同的类而具有不同的功 能。 注意,即使 tom 被声明为 Animal 类型,但因为它的值是 Horse 是如何工作的,那么首先阅读Yehuda Katz写的Understanding JavaScript Function Invocation and “this”。 Yehuda的文章详细的阐述了 this 的内部工作原理,因 此我们这里只做简单介绍。 JavaScript里, this 的值在函数被调用的时候才会指定。 这是个既强大又灵活的特点,但是你 需要花点时间弄清楚函数调用的上下文是什么。 但众所周知,这不是一件很简单的事,尤其是在返回0 码力 | 683 页 | 6.27 MB | 1 年前3
共 7 条
- 1













