Hello 算法 1.1.0 TypeScript版
Hello 算法 TypeScript 语言版 作者:靳宇栋(@krahets) 代码审阅:谢发 (@justin‑tse) Release 1.1.0 2024‑04‑15 序 两年前,我在力扣上分享了“剑指 Offer”系列题解,受到了许多读者的鼓励和支持。在与读者交流期间,我 最常被问的一个问题是“如何入门算法”。逐渐地,我对这个问题产生了浓厚的兴趣。 两眼一抹黑地刷题似乎是最 力,啃厚重的书往往变成了一项艰巨的挑战。 如果你也面临类似的困扰,那么很幸运这本书“找”到了你。本书是我对这个问题给出的答案,即使不是最 优解,也至少是一次积极的尝试。本书虽然不足以让你直接拿到 Offer,但会引导你探索数据结构与算法的 “知识地图”,带你了解不同“地雷”的形状、大小和分布位置,让你掌握各种“排雷方法”。有了这些本领, 相信你可以更加自如地刷题和阅读文献,逐步构建起完整的知识体系。 我深深赞同费曼教授所言:“Knowledge 网页版以获得更优的阅读体验。 推荐语 “一本通俗易懂的数据结构与算法入门书,引导读者手脑并用地学习,强烈推荐算法初学者阅读!” ——邓俊辉,清华大学计算机系教授 “如果我当年学数据结构与算法的时候有《Hello 算法》,学起来应该会简单 10 倍!” ——李沐,亚马逊资深首席科学家 计算机的出现给世界带来了巨大变革,它凭借高速的计算能力和出色的可编程性,成为了执行算法与处理数 据的理想媒介。无论是电子游戏的逼真画面、自动驾驶的智能决策,还是0 码力 | 383 页 | 18.49 MB | 1 年前3Hello 算法 1.2.0 简体中文 TypeScript 版
Hello 算法 TypeScript 语言版 作者:靳宇栋(@krahets) 代码审阅:谢发 (@justin‑tse) Release 1.2.0 2024‑12‑06 序 两年前,我在力扣上分享了“剑指 Offer”系列题解,受到了许多读者的鼓励和支持。在与读者交流期间,我 最常被问的一个问题是“如何入门算法”。逐渐地,我对这个问题产生了浓厚的兴趣。 两眼一抹黑地刷题似乎是最 力,啃厚重的书往往变成了一项艰巨的挑战。 如果你也面临类似的困扰,那么很幸运这本书“找”到了你。本书是我对这个问题给出的答案,即使不是最 优解,也至少是一次积极的尝试。本书虽然不足以让你直接拿到 Offer,但会引导你探索数据结构与算法的 “知识地图”,带你了解不同“地雷”的形状、大小和分布位置,让你掌握各种“排雷方法”。有了这些本领, 相信你可以更加自如地刷题和阅读文献,逐步构建起完整的知识体系。 我深深赞同费曼教授所言:“Knowledge 网页版以获得更优的阅读体验。 推荐语 “一本通俗易懂的数据结构与算法入门书,引导读者手脑并用地学习,强烈推荐算法初学者阅读!” ——邓俊辉,清华大学计算机系教授 “如果我当年学数据结构与算法的时候有《Hello 算法》,学起来应该会简单 10 倍!” ——李沐,亚马逊资深首席科学家 计算机的出现给世界带来了巨大变革,它凭借高速的计算能力和出色的可编程性,成为了执行算法与处理数 据的理想媒介。无论是电子游戏的逼真画面、自动驾驶的智能决策,还是0 码力 | 383 页 | 18.49 MB | 10 月前3Hello 算法 1.2.0 繁体中文 TypeScript 版
Hello 演算法 TypeScript 語言版 作者:靳宇棟(@krahets) 程式碼審閱:謝發 (@justin‑tse) Release 1.2.0 2024‑12‑06 序 兩年前,我在力扣上分享了“劍指 Offer”系列題解,受到了許多讀者的鼓勵與支持。在與讀者交流期間,我 最常被問到的一個問題是“如何入門演算法”。漸漸地,我對這個問題產生了濃厚的興趣。 兩眼一抹黑地刷題 如果你也面臨類似的困擾,那麼很幸運這本書“找”到了你。本書是我對這個問題給出的答案,即使不是最 佳解,也至少是一種積極的嘗試。本書雖然不足以讓你直接拿到 Offer,但會引導你探索資料結構與演算法 的“知識地圖”,帶你了解不同“地雷”的形狀、大小與分布位置,讓你掌握各種“排雷方法”。有了這些本 領,相信你可以更加自如地刷題與閱讀文獻,逐步構建起完整的知識體系。 我深深認同費曼教授所言:“Knowledge 推薦語 “一本通俗易懂的資料結構與演算法入門書,引導讀者手腦並用地學習,強烈推薦演算法初學者閱讀!” ——鄧俊輝,清華大學計算機系教授 “如果我當年學資料結構與演算法時有《Hello 演算法》,學起來應該會簡單 10 倍!” ——李沐,亞馬遜資深首席科學家 電腦的出現為世界帶來了巨大的變革,它憑藉高速的運算能力與卓越的可程式化特性,成為執行演算法 與處理資料的理想媒介。無論是電玩遊戲的逼真畫面、自動駕駛的智慧決策,還是0 码力 | 384 页 | 18.80 MB | 10 月前3Hello 算法 1.0.0b1 TypeScript 版
Hello 算法 TypeScript 语言版 靳宇栋(Krahets) Release 1.0.0b1 2023‑03‑01 序 两年前,我在力扣上分享了《剑指 Offer》系列题解,受到了很多小伙伴的喜爱与支持。在此期间,我也回复 了许多读者的评论问题,遇到最多的问题是“如何入门学习算法”。我渐渐也对这个问题好奇了起来。 两眼一抹黑地刷题应该是最受欢迎的方式,简单粗暴且有效。然而,刷题就如同玩“扫雷”游戏,自学能力强 重的书本也因此成为巨大的挑战。 如果你也有上述烦恼,那么很幸运这本书找到了你。本书是我对于该问题给出的答案,虽然不一定正确,但至 少代表一次积极的尝试。这本书虽然不足以让你直接拿到 Offer ,但会引导你探索数据结构与算法的“知识地 图”,带你了解不同“地雷”的形状大小和分布位置,让你掌握各种“排雷方法”。有了这些本领,相信你可以 更加得心应手地刷题与阅读文献,逐步搭建起完整的知识体系。 书内的代码配有可一键运行的源文件,托管在 krahets, nuomi1, Reanon, sjinzh 完成,感谢他们的辛勤付出! 推荐语 “一本通俗易懂的数据结构与算法入门书,引导读者手脑并用地学习,强烈推荐算法初学者阅读。” ——邓俊辉,清华大学计算机系教授 “如果我当年学数据结构与算法的时候有《Hello 算法》,学起来应该会简单 10 倍!” ——李沐,亚马逊资深首席科学家 i 目 录 0. 写在前面 1 0.1. 关于本书0 码力 | 186 页 | 14.71 MB | 1 年前3Hello 算法 1.0.0b5 TypeScript 版
Hello 算法 TypeScript 语言版 靳宇栋(Krahets) Release 1.0.0b5 2023‑09‑10 序 两年前,我在力扣上分享了《剑指 Offer》系列题解,受到了许多同学的喜爱和支持。在与读者的交流期间, 最常收到的一个问题是“如何入门学习算法”。我逐渐对这个问题产生了浓厚的兴趣。 两眼一抹黑地刷题似乎是最受欢迎的方法,简单直接且有效。刷题就如同玩“扫雷”游戏,自学能力强的同 。 如果你也面临类似的困扰,那么很幸运这本书找到了你。本书是我对此问题的给出的答案,即使不是最优解, 也至少是一次积极的尝试。这本书虽然不足以让你直接拿到 Offer ,但会引导你探索数据结构与算法的“知 识地图”,带你了解不同“地雷”的形状大小和分布位置,让你掌握各种“排雷方法”。有了这些本领,相信 你可以更加自如地应对刷题和阅读文献,逐步构建起完整的知识体系。 本书中的代码附有可一键运行的源文件,托管于 展示效果受限,可访问 hello‑algo.com 网页版以获得更优的阅读体验。 推荐语 “一本通俗易懂的数据结构与算法入门书,引导读者手脑并用地学习,强烈推荐算法初学者阅读。” ——邓俊辉,清华大学计算机系教授 “如果我当年学数据结构与算法的时候有《Hello 算法》,学起来应该会简单 10 倍!” ——李沐,亚马逊资深首席科学家 致谢 本书在开源社区众多贡献者的共同努力下不断成0 码力 | 378 页 | 30.70 MB | 1 年前3TypeScript Handbook(中文版)
适的通用类型。例如, let x = [0, 1, null]; 为了推断 x 的类型,我们必须考虑所有元素的类型。 这里有两种选 择: number 和 null 。 计算通用类型算法会考虑所有的候选类型,并给出一个 兼容所有候选类型的类型。 由于最终的通用类型取自候选类型,有些时候候选类型共享相同的通用类型,但是 却没有一个类型能做为所有候选类型的类型。例如: let zoo /moduleB.d.ts Node TypeScript Handbook(中文版) 383 模块解析 这个解析策略试图在运行时模仿Node.js模块解析机制。 完整的Node.js解析算法可 以在Node.js module documentation找到。 Node.js如何解析模块 为了理解TypeScript编译依照的解析步骤,先弄明白Node.js模块是非常重要的。 通0 码力 | 557 页 | 7.48 MB | 1 年前3TypeScript 4.0 使用手册
用类型。例 如, 1. let x = [0, 1, null]; 为了推断 x 的类型,我们必须考虑所有元素的类型。 这里有两种选择: number 和 null 。 计 算通用类型算法会考虑所有的候选类型,并给出一个兼容所有候选类型的类型。 由于最终的通用类型取自候选类型,有些时候候选类型共享相同的通用类型,但是却没有一个类型能做 为所有候选类型的类型。例如: 1. let /root/moduleB.d.ts 7. /moduleB.ts 8. /moduleB.d.ts 这个解析策略试图在运行时模仿Node.js模块解析机制。 完整的Node.js解析算法可以在Node.js module documentation找到。 为了理解TypeScript编译依照的解析步骤,先弄明白Node.js模块是非常重要的。 通常,在 Node.js里导入是通过 的实例,那么我们就可以断定不存在可以赋值的实例,因此可以解析为 Y 。 其次,针对每个在 U 内由 推断 声明引入的类型变量,依据从 T 推断到 U 来收集一组候选类 型(使用与泛型函数类型推断相同的推断算法)。对于给定的 推断 类型变量 V ,如果有候选类 型是从协变的位置上推断出来的,那么 V 的类型是那些候选类型的联合。反之,如果有候选类型 是从逆变的位置上推断出来的,那么 V 的类型是那些候选类型的交叉类型。否则0 码力 | 683 页 | 6.27 MB | 1 年前3
共 7 条
- 1