Hello 算法 1.2.0 繁体中文 Java 版在與讀者交流期間,我 最常被問到的一個問題是“如何入門演算法”。漸漸地,我對這個問題產生了濃厚的興趣。 兩眼一抹黑地刷題似乎是最受歡迎的方法,簡單、直接且有效。然而刷題就如同玩“踩地雷”遊戲,自學能 力強的人能夠順利將地雷逐個排掉,而基礎不足的人很可能被炸得焦頭爛額,並在挫折中步步退縮。通讀教 材也是一種常見做法,但對於面向求職的人來說,畢業論文、投遞履歷、準備筆試和面試已經消耗了大部分 attention.”從這個意義上看,這本 書並非完全“免費”。為了不辜負你為本書所付出的寶貴“注意力”,我會竭盡所能,投入最大的“注意力” 來完成本書的創作。 本人自知學疏才淺,書中內容雖然已經過一段時間的打磨,但一定仍有許多錯誤,懇請各位老師與同學批評 指正。 本書中的程式碼附有可一鍵執行的原始檔,託管於 github.com/krahets/hello‑algo 倉庫。 動畫在 PDF 內的展示效果有限,可訪問 com 網頁版以獲得更佳的閱讀體驗。 推薦語 “一本通俗易懂的資料結構與演算法入門書,引導讀者手腦並用地學習,強烈推薦演算法初學者閱讀!” ——鄧俊輝,清華大學計算機系教授 “如果我當年學資料結構與演算法時有《Hello 演算法》,學起來應該會簡單 10 倍!” ——李沐,亞馬遜資深首席科學家 電腦的出現為世界帶來了巨大的變革,它憑藉高速的運算能力與卓越的可程式化特性,成為執行演算法 與處0 码力 | 379 页 | 18.79 MB | 10 月前3
Nacos架构&原理
时云原 生和微服务整个普及度还很低;还有我主管当时还强调两个点,第⼀个点是我们当时是⼀个闭源的 ⼀个软件,经常有业务方跳出来说你看 Eureka 多好,你们哪里哪里不行,如果我们不开源去打⼀ 打,怎么更好的证明我们更好,还有⼀个点是当时我们有商业化产品的,虽然我们知道我们更好, 但是奈何用户选择的是 Eureka,我们只能兼容,而且我们不出去,不成为默认标准,不知道未来还 要被迫兼容更多 CRUD,域名 CRUD,服务健康状态检查,服务权重管理等功能。 配置管理:实现配置管 CRUD,版本管理,灰度管理,监听管理,推送轨迹,聚合数据等功能。 元数据管理:提供元数据 CURD 和打标能力,为实现上层流量和服务灰度非常关键。 19 > Nacos 架构 内核层 插件机制:实现三个模块可分可合能力,实现扩展点 SPI 机制,用于扩展自己公司定制。 事件机制:实现异步化事件通知,SDK 本文并不是⼀篇介绍 Nacos 功能的文章,因此 Nacos 的⼀些特色功能并没有在文中涉及,这些特 色功能其实也是 Nacos 区别与其他注册中心的重要方面,包括 Nacos 支持的 DNS 协议,打自定 义标等能力。稍微熟悉 Nacos 的读者可能会注意到,Nacos 的整体架构和 Consul 有⼀些类似, 但是事实上 Nacos 和 Consul 除了都是把配置管理和服务发现部署在⼀起,其他地方基本上没有0 码力 | 326 页 | 12.83 MB | 10 月前3
Java 应用与开发 - Java EE 过滤器编程过滤器的核心方法,在满足过滤器过滤目标 URL 的请求和响应 时调用,开发人员在此方法中编写过滤功能代码。 public void destroy() 在过滤器销毁之前此方法被调用,此方法主要编写清理和关闭打 开的资源操作,如关闭数据库连接、将过滤信息保存到外部资源 操作。 大纲 过滤器概述 Java EE 过滤器 API Java EE 过滤器编程和配置 过滤器的主要任务 本节习题 Filter 的0 码力 | 31 页 | 605.91 KB | 1 年前3
Apache Shiro 1.2.x Reference Manual 中文翻译"pinter:print" 是等价 "priner:print:*" 的! 因此,这是一个不正确的检查。如果当前用户不具备打印到任何打印机的能力,仅仅只有打 印到 lp7200 和 epsoncolor 的能力,该怎么办呢?那么上面的第二个例子也绝不允许他们打 印到 lp7200 打印机,即使他们已被赋予了相应的能力! Apache Shiro 1.2.x Reference Manual 中文翻译0 码力 | 196 页 | 2.34 MB | 1 年前3
Apache Shiro参考手册中文版Return the current jobs on printer lp 7200 } 这是体现权限的一个极为有效的方法。但同样,为所有的打印机定义多个实例 ID 能很好的扩展,尤其是当新的打 印机添加到系统的时候。你可以使用通配符来代替: printer:print:* 这个做到了扩展,因为它同时涵盖了任何新的打印机。你甚至可以运行访问所有打印机上的所有操作: printer:*:*0 码力 | 92 页 | 1.16 MB | 1 年前3
Hello 算法 1.0.0b1 Java版hello‑algo.com 147 Figure 9‑10. 图的广度优先遍历步骤 � 广度优先遍历的序列是否唯一? 不唯一。广度优先遍历只要求“由近及远”,而多个相同距离的顶点的遍历顺序允许被任意打 乱。以上图为例,顶点 1 , 3 的访问顺序可以交换、顶点 2 , 4 , 6 的访问顺序也可以任意交换、 以此类推⋯⋯ 复杂度分析 时间复杂度:所有顶点都会入队、出队一次,使用 ?(|? |)0 码力 | 186 页 | 14.71 MB | 1 年前3
Hello 算法 1.0.0b2 Java版hello‑algo.com 148 Figure 9‑10. 图的广度优先遍历步骤 � 广度优先遍历的序列是否唯一? 不唯一。广度优先遍历只要求“由近及远”,而多个相同距离的顶点的遍历顺序允许被任意打 乱。以上图为例,顶点 1 , 3 的访问顺序可以交换、顶点 2 , 4 , 6 的访问顺序也可以任意交换、 以此类推⋯⋯ 复杂度分析 时间复杂度:所有顶点都会入队、出队一次,使用 ?(|? |)0 码力 | 197 页 | 15.72 MB | 1 年前3
Hello 算法 1.0.0b4 Java版系统需要安装 MinGW(配置教程),MacOS 自带 Clang 无需安装。 2. 在 VSCode 的插件市场中搜索 c++ ,安装 C/C++ Extension Pack 。 3.(可 选) 打 开 Settings 页 面, 搜 索 Clang_format_fallback Style 代 码 格 式 化 选 项, 设 置 为 { BasedOnStyle: Microsoft, BreakBeforeBraces:0 码力 | 342 页 | 27.39 MB | 1 年前3
Hello 算法 1.1.0 Java版系统需要安装 MinGW(配置教程);MacOS 自带 Clang ,无须安装。 2. 在 VS Code 的插件市场中搜索 c++ ,安装 C/C++ Extension Pack 。 3.(可 选) 打 开 Settings 页 面, 搜 索 Clang_format_fallback Style 代 码 格 式 化 选 项, 设 置 为 { BasedOnStyle: Microsoft, BreakBeforeBraces:0 码力 | 378 页 | 18.47 MB | 1 年前3
Hello 算法 1.0.0b5 Java版系统需要安装 MinGW(配置教程),MacOS 自带 Clang 无须安装。 2. 在 VSCode 的插件市场中搜索 c++ ,安装 C/C++ Extension Pack 。 3.(可 选) 打 开 Settings 页 面, 搜 索 Clang_format_fallback Style 代 码 格 式 化 选 项, 设 置 为 { BasedOnStyle: Microsoft, BreakBeforeBraces:0 码力 | 376 页 | 30.69 MB | 1 年前3
共 12 条
- 1
- 2













