 Java 应用与开发 - 线程编程线程基础 线程控制 线程的同步 相关知识回顾 线程和进程的区别和联系 代码 数据 进程空间 打开文件 寄存器 栈 线程 1 寄存器 栈 线程 2 寄存器 栈 线程 3 线程与进程的关系 1. 每个进程都有独立的代码和数据空间(进程上下文),进程切换的 开销大。 2. 线程作为“轻量的进程”,同一类线程共享代码和数据空间,每个 线程有独立的运行栈和程序计数器(PC),线程切换的开销小。 线程基础 线程控制 线程的同步 相关知识回顾 线程和进程的区别和联系 代码 数据 进程空间 打开文件 寄存器 栈 线程 1 寄存器 栈 线程 2 寄存器 栈 线程 3 线程与进程的关系 1. 每个进程都有独立的代码和数据空间(进程上下文),进程切换的 开销大。 2. 线程作为“轻量的进程”,同一类线程共享代码和数据空间,每个 线程有独立的运行栈和程序计数器(PC),线程切换的开销小。 线程的概念模型 Java 线程的概念模型 在 Java 语言中,多线程的机制通过虚拟 CPU 来实现。 1. 虚拟的 CPU,由 java.lang.Thread 类封装和虚拟; 2. CPU 所执行的代码和数据,传递给 Thread 类对象。 代码 数据 虚拟CPU 大纲 线程基础 线程控制 线程的同步 创建线程 ���� 线程基础 相关知识回顾 线程的概念模型 创建线程 后台线程0 码力 | 82 页 | 1010.73 KB | 1 年前3 Java 应用与开发 - 线程编程线程基础 线程控制 线程的同步 相关知识回顾 线程和进程的区别和联系 代码 数据 进程空间 打开文件 寄存器 栈 线程 1 寄存器 栈 线程 2 寄存器 栈 线程 3 线程与进程的关系 1. 每个进程都有独立的代码和数据空间(进程上下文),进程切换的 开销大。 2. 线程作为“轻量的进程”,同一类线程共享代码和数据空间,每个 线程有独立的运行栈和程序计数器(PC),线程切换的开销小。 线程基础 线程控制 线程的同步 相关知识回顾 线程和进程的区别和联系 代码 数据 进程空间 打开文件 寄存器 栈 线程 1 寄存器 栈 线程 2 寄存器 栈 线程 3 线程与进程的关系 1. 每个进程都有独立的代码和数据空间(进程上下文),进程切换的 开销大。 2. 线程作为“轻量的进程”,同一类线程共享代码和数据空间,每个 线程有独立的运行栈和程序计数器(PC),线程切换的开销小。 线程的概念模型 Java 线程的概念模型 在 Java 语言中,多线程的机制通过虚拟 CPU 来实现。 1. 虚拟的 CPU,由 java.lang.Thread 类封装和虚拟; 2. CPU 所执行的代码和数据,传递给 Thread 类对象。 代码 数据 虚拟CPU 大纲 线程基础 线程控制 线程的同步 创建线程 ���� 线程基础 相关知识回顾 线程的概念模型 创建线程 后台线程0 码力 | 82 页 | 1010.73 KB | 1 年前3
 Nacos架构&原理
DNS(Dubbo+Nacos+Spring- cloud-alibaba/Seata/Sentinel)微服务最佳实践。 随着我们选择三合⼀的开源模式,又面临另外⼀个问题,未来内部和商业化关系是什么,代码关系 是什么? 这个问题应该说⼀直持续,但是我们定下来开源、自研、商业化三位⼀体的战略,以开源为内核, 以商业化为扩展;开源做生态,商业化做企业级特性,阿里内部做性能和高可用;开源做组件,商 未来为了 Nacos 2.0 代码更加清爽,性能更加卓越,我们将加速插件化和服务网格生态的进化速度, 期望对此感兴趣小伙伴⼀起共建!!! 17 > Nacos 架构 Nacos 架构 Nacos 总体设计 Nacos 架构 Nacos 开源之前在阿里内部已经发展了十年,沉淀了很多优秀的能力,也有很多历史负担,在开源 的时候我们取其精华进行开源,为了提升代码的健壮性和扩展性,进行了充分的分层和模块化设计。 协作。  架构⼀致性,⼀套架构要能适应开源、内部、商业化(公有云及专有云)3 个场景。  扩展性,以开源为内核,商业化做基础,充分扩展,方便用户扩展。  模块化,将通用部分抽象下沉,提升代码复用和健壮性。  长期主义,不是要⼀个能支撑未来 3 年的架构,而是要能够支撑 10 年的架构。  开放性,设计和讨论保持社区互动和透明,方便大家协作。 架构图 整体架构分为用户层、业务0 码力 | 326 页 | 12.83 MB | 9 月前3 Nacos架构&原理
DNS(Dubbo+Nacos+Spring- cloud-alibaba/Seata/Sentinel)微服务最佳实践。 随着我们选择三合⼀的开源模式,又面临另外⼀个问题,未来内部和商业化关系是什么,代码关系 是什么? 这个问题应该说⼀直持续,但是我们定下来开源、自研、商业化三位⼀体的战略,以开源为内核, 以商业化为扩展;开源做生态,商业化做企业级特性,阿里内部做性能和高可用;开源做组件,商 未来为了 Nacos 2.0 代码更加清爽,性能更加卓越,我们将加速插件化和服务网格生态的进化速度, 期望对此感兴趣小伙伴⼀起共建!!! 17 > Nacos 架构 Nacos 架构 Nacos 总体设计 Nacos 架构 Nacos 开源之前在阿里内部已经发展了十年,沉淀了很多优秀的能力,也有很多历史负担,在开源 的时候我们取其精华进行开源,为了提升代码的健壮性和扩展性,进行了充分的分层和模块化设计。 协作。  架构⼀致性,⼀套架构要能适应开源、内部、商业化(公有云及专有云)3 个场景。  扩展性,以开源为内核,商业化做基础,充分扩展,方便用户扩展。  模块化,将通用部分抽象下沉,提升代码复用和健壮性。  长期主义,不是要⼀个能支撑未来 3 年的架构,而是要能够支撑 10 年的架构。  开放性,设计和讨论保持社区互动和透明,方便大家协作。 架构图 整体架构分为用户层、业务0 码力 | 326 页 | 12.83 MB | 9 月前3
 Hello 算法 1.2.0 繁体中文 Java 版位元,可以表示 28 個數字。 ‧ 整數型別 int 佔用 4 位元組 = 32 位元,可以表示 232 個數字。 表 3‑1 列舉了 Java 中各種基本資料型別的佔用空間、取值範圍和預設值。此表格無須死記硬背,大致理解即 可,需要時可以透過查表來回憶。 表 3‑1 基本資料型別的佔用空間和取值範圍 型別 符號 佔用空間 最小值 最大值 預設值 整數 byte 1 位元組 −27 (−128) 部分名詞在簡體中文和繁體中文下的叫法不同。 表 16‑1 資料結構與演算法的重要名詞 English 簡體中文 繁體中文 algorithm 算法 演算法 data structure 数据结构 資料結構 code 代码 程式碼 file 文件 檔案 function 函数 函式 method 方法 方法 variable 变量 變數 asymptotic complexity analysis 渐近复杂度分析0 码力 | 379 页 | 18.79 MB | 10 月前3 Hello 算法 1.2.0 繁体中文 Java 版位元,可以表示 28 個數字。 ‧ 整數型別 int 佔用 4 位元組 = 32 位元,可以表示 232 個數字。 表 3‑1 列舉了 Java 中各種基本資料型別的佔用空間、取值範圍和預設值。此表格無須死記硬背,大致理解即 可,需要時可以透過查表來回憶。 表 3‑1 基本資料型別的佔用空間和取值範圍 型別 符號 佔用空間 最小值 最大值 預設值 整數 byte 1 位元組 −27 (−128) 部分名詞在簡體中文和繁體中文下的叫法不同。 表 16‑1 資料結構與演算法的重要名詞 English 簡體中文 繁體中文 algorithm 算法 演算法 data structure 数据结构 資料結構 code 代码 程式碼 file 文件 檔案 function 函数 函式 method 方法 方法 variable 变量 變數 asymptotic complexity analysis 渐近复杂度分析0 码力 | 379 页 | 18.79 MB | 10 月前3
 《Java 应用与开发》课程讲义 - 王晓东115 vi 10.3.1 ArrayList 类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 10.3.2 代码的局部性能优化 ensureCapacity . . . . . . . . . . . . . . . . . . 116 10.3.3 Vector 类 . . . . . . . . . . 23.4 JSP 脚本 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 23.4.1 代码脚本 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 23.4.2 表达式脚本 . . . . . . . . . . . . . . . 273 xxii 序 言 本讲义配套中国海洋大学信息科学与工程学院计算机科学与技术系《Java 应用与 开发》课程使用。 本讲义参考了多方书籍、资料和源代码而编写,在此对原始资料的作者和编者表 示感谢。但为保证课堂教学进度和实验授课质量,并没有随本文档公开原始参考资料 的出处,望相关作者和编者谅解! xxiii Java 应用与开发课程教学体系0 码力 | 330 页 | 6.54 MB | 1 年前3 《Java 应用与开发》课程讲义 - 王晓东115 vi 10.3.1 ArrayList 类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 10.3.2 代码的局部性能优化 ensureCapacity . . . . . . . . . . . . . . . . . . 116 10.3.3 Vector 类 . . . . . . . . . . 23.4 JSP 脚本 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 23.4.1 代码脚本 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 23.4.2 表达式脚本 . . . . . . . . . . . . . . . 273 xxii 序 言 本讲义配套中国海洋大学信息科学与工程学院计算机科学与技术系《Java 应用与 开发》课程使用。 本讲义参考了多方书籍、资料和源代码而编写,在此对原始资料的作者和编者表 示感谢。但为保证课堂教学进度和实验授课质量,并没有随本文档公开原始参考资料 的出处,望相关作者和编者谅解! xxiii Java 应用与开发课程教学体系0 码力 | 330 页 | 6.54 MB | 1 年前3
 Hello 算法 1.1.0 Java版书并非完全“免费”。为了不辜负你为本书所付出的宝贵“注意力”,我会竭尽所能,投入最大的“注意力” 来完成本书的创作。 本人自知学疏才浅,书中内容虽然已经过一段时间的打磨,但一定仍有许多错误,恳请各位老师和同学批评 指正。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。 动画在 PDF 内的展示效果受限,可访问 hello‑algo.com 网页版以获得更优的阅读体验。 到一个家庭,社会的主要组织形式呈现出“树”的特征;冬天的衣服就像“栈”,最先穿上的最后才能脱下; 羽毛球筒则如同“队列”,一端放入、另一端取出;字典就像一个“哈希表”,能够快速查找目标词条。 本书旨在通过清晰易懂的动画图解和可运行的代码示例,使读者理解算法和数据结构的核心概念,并能够通 过编程来实现它们。在此基础上,本书致力于揭示算法在复杂世界中的生动体现,展现算法之美。希望本书 能够帮助到你! i 目 录 第 0 章 前言 Abstract 算法犹如美妙的交响乐,每一行代码都像韵律般流淌。 愿这本书在你的脑海中轻轻响起,留下独特而深刻的旋律。 第 0 章 前言 hello‑algo.com 2 0.1 关于本书 本项目旨在创建一本开源、免费、对新手友好的数据结构与算法入门教程。 ‧ 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂,学习曲线平滑。 ‧ 算法源代码皆可一键运行,支持 Python、C+0 码力 | 378 页 | 18.47 MB | 1 年前3 Hello 算法 1.1.0 Java版书并非完全“免费”。为了不辜负你为本书所付出的宝贵“注意力”,我会竭尽所能,投入最大的“注意力” 来完成本书的创作。 本人自知学疏才浅,书中内容虽然已经过一段时间的打磨,但一定仍有许多错误,恳请各位老师和同学批评 指正。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。 动画在 PDF 内的展示效果受限,可访问 hello‑algo.com 网页版以获得更优的阅读体验。 到一个家庭,社会的主要组织形式呈现出“树”的特征;冬天的衣服就像“栈”,最先穿上的最后才能脱下; 羽毛球筒则如同“队列”,一端放入、另一端取出;字典就像一个“哈希表”,能够快速查找目标词条。 本书旨在通过清晰易懂的动画图解和可运行的代码示例,使读者理解算法和数据结构的核心概念,并能够通 过编程来实现它们。在此基础上,本书致力于揭示算法在复杂世界中的生动体现,展现算法之美。希望本书 能够帮助到你! i 目 录 第 0 章 前言 Abstract 算法犹如美妙的交响乐,每一行代码都像韵律般流淌。 愿这本书在你的脑海中轻轻响起,留下独特而深刻的旋律。 第 0 章 前言 hello‑algo.com 2 0.1 关于本书 本项目旨在创建一本开源、免费、对新手友好的数据结构与算法入门教程。 ‧ 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂,学习曲线平滑。 ‧ 算法源代码皆可一键运行,支持 Python、C+0 码力 | 378 页 | 18.47 MB | 1 年前3
 Hello 算法 1.0.0 Java版书并非完全“免费”。为了不辜负你为本书所付出的宝贵“注意力”,我会竭尽所能,投入最大的“注意力” 来完成本书的创作。本人自知学疏才浅,书中内容虽然已经过一段时间的打磨,但一定仍有许多错误,恳请 各位老师和同学批评指正。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。动画在 PDF 内的 展示效果受限,可访问 hello‑algo.com 网页版以获得更优的阅读体验。 前言 � 算法犹如美妙的交响乐,每一行代码都像韵律般流淌。 愿这本书在你的脑海中轻轻响起,留下独特而深刻的旋律。 第 0 章 前言 hello‑algo.com 2 0.1 关于本书 本项目旨在创建一本开源、免费、对新手友好的数据结构与算法入门教程。 ‧ 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂,学习曲线平滑。 ‧ 算法源代码皆可一键运行,支持 Python、C+ 不会之间反复横跳,那么本书正是为你量身定制的! 如果你已经积累一定的刷题量,熟悉大部分题型,那么本书可助你回顾与梳理算法知识体系,仓库源代码可 以当作“刷题工具库”或“算法字典”来使用。 若你是算法“大神”,我们期待收到你的宝贵建议,或者一起参与创作。 � 前置条件 你需要至少具备任一语言的编程基础,能够阅读和编写简单代码。 0.1.2 内容结构 本书的主要内容如图 0‑1 所示。 ‧ 复杂度分析:数据结构和算法的评0 码力 | 376 页 | 17.59 MB | 1 年前3 Hello 算法 1.0.0 Java版书并非完全“免费”。为了不辜负你为本书所付出的宝贵“注意力”,我会竭尽所能,投入最大的“注意力” 来完成本书的创作。本人自知学疏才浅,书中内容虽然已经过一段时间的打磨,但一定仍有许多错误,恳请 各位老师和同学批评指正。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。动画在 PDF 内的 展示效果受限,可访问 hello‑algo.com 网页版以获得更优的阅读体验。 前言 � 算法犹如美妙的交响乐,每一行代码都像韵律般流淌。 愿这本书在你的脑海中轻轻响起,留下独特而深刻的旋律。 第 0 章 前言 hello‑algo.com 2 0.1 关于本书 本项目旨在创建一本开源、免费、对新手友好的数据结构与算法入门教程。 ‧ 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂,学习曲线平滑。 ‧ 算法源代码皆可一键运行,支持 Python、C+ 不会之间反复横跳,那么本书正是为你量身定制的! 如果你已经积累一定的刷题量,熟悉大部分题型,那么本书可助你回顾与梳理算法知识体系,仓库源代码可 以当作“刷题工具库”或“算法字典”来使用。 若你是算法“大神”,我们期待收到你的宝贵建议,或者一起参与创作。 � 前置条件 你需要至少具备任一语言的编程基础,能够阅读和编写简单代码。 0.1.2 内容结构 本书的主要内容如图 0‑1 所示。 ‧ 复杂度分析:数据结构和算法的评0 码力 | 376 页 | 17.59 MB | 1 年前3
 Hello 算法 1.2.0 简体中文 Java 版Hello 算法 Java 语言版 作者:靳宇栋(@krahets) 代码审阅:靳宇栋(@krahets) Release 1.2.0 2024‑12‑06 序 两年前,我在力扣上分享了“剑指 Offer”系列题解,受到了许多读者的鼓励和支持。在与读者交流期间,我 最常被问的一个问题是“如何入门算法”。逐渐地,我对这个问题产生了浓厚的兴趣。 两眼一抹黑地刷题似乎是最受欢迎的方法,简单 书并非完全“免费”。为了不辜负你为本书所付出的宝贵“注意力”,我会竭尽所能,投入最大的“注意力” 来完成本书的创作。 本人自知学疏才浅,书中内容虽然已经过一段时间的打磨,但一定仍有许多错误,恳请各位老师和同学批评 指正。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。 动画在 PDF 内的展示效果受限,可访问 www.hello‑algo.com 网页版以获得更优的阅读体验。 到一个家庭,社会的主要组织形式呈现出“树”的特征;冬天的衣服就像“栈”,最先穿上的最后才能脱下; 羽毛球筒则如同“队列”,一端放入、另一端取出;字典就像一个“哈希表”,能够快速查找目标词条。 本书旨在通过清晰易懂的动画图解和可运行的代码示例,使读者理解算法和数据结构的核心概念,并能够通 过编程来实现它们。在此基础上,本书致力于揭示算法在复杂世界中的生动体现,展现算法之美。希望本书 能够帮助到你! i 目 录 第 0 章 前言0 码力 | 379 页 | 18.48 MB | 10 月前3 Hello 算法 1.2.0 简体中文 Java 版Hello 算法 Java 语言版 作者:靳宇栋(@krahets) 代码审阅:靳宇栋(@krahets) Release 1.2.0 2024‑12‑06 序 两年前,我在力扣上分享了“剑指 Offer”系列题解,受到了许多读者的鼓励和支持。在与读者交流期间,我 最常被问的一个问题是“如何入门算法”。逐渐地,我对这个问题产生了浓厚的兴趣。 两眼一抹黑地刷题似乎是最受欢迎的方法,简单 书并非完全“免费”。为了不辜负你为本书所付出的宝贵“注意力”,我会竭尽所能,投入最大的“注意力” 来完成本书的创作。 本人自知学疏才浅,书中内容虽然已经过一段时间的打磨,但一定仍有许多错误,恳请各位老师和同学批评 指正。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。 动画在 PDF 内的展示效果受限,可访问 www.hello‑algo.com 网页版以获得更优的阅读体验。 到一个家庭,社会的主要组织形式呈现出“树”的特征;冬天的衣服就像“栈”,最先穿上的最后才能脱下; 羽毛球筒则如同“队列”,一端放入、另一端取出;字典就像一个“哈希表”,能够快速查找目标词条。 本书旨在通过清晰易懂的动画图解和可运行的代码示例,使读者理解算法和数据结构的核心概念,并能够通 过编程来实现它们。在此基础上,本书致力于揭示算法在复杂世界中的生动体现,展现算法之美。希望本书 能够帮助到你! i 目 录 第 0 章 前言0 码力 | 379 页 | 18.48 MB | 10 月前3
 Hello 算法 1.0.0b5 Java版,但会引导你探索数据结构与算法的“知 识地图”,带你了解不同“地雷”的形状大小和分布位置,让你掌握各种“排雷方法”。有了这些本领,相信 你可以更加自如地应对刷题和阅读文献,逐步构建起完整的知识体系。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。动画在 PDF 内的 展示效果受限,可访问 hello‑algo.com 网页版以获得更优的阅读体验。 czruby, gltianwen, liuxjerry, yabo083. 本书的代码审阅工作由 Gonglja, gvenusleo, hpstory, justin‐tse, krahets, nuomi1, Reanon, sjinzh 完 成(按照首字母顺序排列)。感谢他们付出的时间与精力,正是他们确保了各语言代码的规范与统一。 i 目 录 第 0 章 前言 1 0.1 关于本书 . 前言 � 算法犹如美妙的交响乐,每一行代码都像韵律般流淌。 愿这本书在你的脑海中轻轻响起,留下独特而深刻的旋律。 第 0 章 前言 hello‑algo.com 2 0.1 关于本书 本项目旨在创建一本开源免费、新手友好的数据结构与算法入门教程。 ‧ 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂、学习曲线平滑。 ‧ 算法源代码皆可一键运行,支持 Java、C++、P0 码力 | 376 页 | 30.69 MB | 1 年前3 Hello 算法 1.0.0b5 Java版,但会引导你探索数据结构与算法的“知 识地图”,带你了解不同“地雷”的形状大小和分布位置,让你掌握各种“排雷方法”。有了这些本领,相信 你可以更加自如地应对刷题和阅读文献,逐步构建起完整的知识体系。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。动画在 PDF 内的 展示效果受限,可访问 hello‑algo.com 网页版以获得更优的阅读体验。 czruby, gltianwen, liuxjerry, yabo083. 本书的代码审阅工作由 Gonglja, gvenusleo, hpstory, justin‐tse, krahets, nuomi1, Reanon, sjinzh 完 成(按照首字母顺序排列)。感谢他们付出的时间与精力,正是他们确保了各语言代码的规范与统一。 i 目 录 第 0 章 前言 1 0.1 关于本书 . 前言 � 算法犹如美妙的交响乐,每一行代码都像韵律般流淌。 愿这本书在你的脑海中轻轻响起,留下独特而深刻的旋律。 第 0 章 前言 hello‑algo.com 2 0.1 关于本书 本项目旨在创建一本开源免费、新手友好的数据结构与算法入门教程。 ‧ 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂、学习曲线平滑。 ‧ 算法源代码皆可一键运行,支持 Java、C++、P0 码力 | 376 页 | 30.69 MB | 1 年前3
 Hello 算法 1.0.0b4 Java版,但会引导你探索数据结构与算法的“知 识地图”,带你了解不同“地雷”的形状大小和分布位置,让你掌握各种“排雷方法”。有了这些本领,相信 你可以更加自如地应对刷题和阅读文献,逐步构建起完整的知识体系。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。动画在 PDF 内的 展示效果受限,可访问 hello‑algo.com 网页版以获得更优的阅读体验。 czruby, gltianwen, liuxjerry, yabo083. 本书的代码审阅工作由 Gonglja, gvenusleo, hpstory, justin‐tse, krahets, nuomi1, Reanon, sjinzh 完 成(按照首字母顺序排列)。感谢他们付出的时间与精力,正是他们确保了各语言代码的规范与统一。 推荐语 “一本通俗易懂的数据结构与算法入门书,引导读者手脑并用地学习,强烈推荐算法初学者阅读。” 0. 前言 0.1. 关于本书 本项目旨在创建一本开源免费、新手友好的数据结构与算法入门教程。 ‧ 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂、学习曲线平滑。 ‧ 算法源代码皆可一键运行,支持 Java, C++, Python, Go, JS, TS, C#, Swift, Zig 等语言。 ‧ 鼓励读者在章节讨论区互帮互助、共同进步,提问与评论通常可在两日内得到回复。0 码力 | 342 页 | 27.39 MB | 1 年前3 Hello 算法 1.0.0b4 Java版,但会引导你探索数据结构与算法的“知 识地图”,带你了解不同“地雷”的形状大小和分布位置,让你掌握各种“排雷方法”。有了这些本领,相信 你可以更加自如地应对刷题和阅读文献,逐步构建起完整的知识体系。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。动画在 PDF 内的 展示效果受限,可访问 hello‑algo.com 网页版以获得更优的阅读体验。 czruby, gltianwen, liuxjerry, yabo083. 本书的代码审阅工作由 Gonglja, gvenusleo, hpstory, justin‐tse, krahets, nuomi1, Reanon, sjinzh 完 成(按照首字母顺序排列)。感谢他们付出的时间与精力,正是他们确保了各语言代码的规范与统一。 推荐语 “一本通俗易懂的数据结构与算法入门书,引导读者手脑并用地学习,强烈推荐算法初学者阅读。” 0. 前言 0.1. 关于本书 本项目旨在创建一本开源免费、新手友好的数据结构与算法入门教程。 ‧ 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂、学习曲线平滑。 ‧ 算法源代码皆可一键运行,支持 Java, C++, Python, Go, JS, TS, C#, Swift, Zig 等语言。 ‧ 鼓励读者在章节讨论区互帮互助、共同进步,提问与评论通常可在两日内得到回复。0 码力 | 342 页 | 27.39 MB | 1 年前3
 Java 应用与开发 - 异常处理一个库的作者可以检测出发生了运行时错误,但一般不知道 怎样去处理它们(因为和用户具体的应用有关); ▶ 另一方面,库的用户知道怎样处理这些错误,但却无法检查 它们何时发生(如果能检测,就可以再用户的代码里处理 了,不用留给库去发现)。 提供异常处理机制的的基本思想 让一个函数在发现了自己无法处理的错误时抛出(throw)一个 异常,然后它的(直接或者间接)调用者能够处理这个问题。 O 《C++ 一个库的作者可以检测出发生了运行时错误,但一般不知道 怎样去处理它们(因为和用户具体的应用有关); ▶ 另一方面,库的用户知道怎样处理这些错误,但却无法检查 它们何时发生(如果能检测,就可以再用户的代码里处理 了,不用留给库去发现)。 提供异常处理机制的的基本思想 让一个函数在发现了自己无法处理的错误时抛出(throw)一个 异常,然后它的(直接或者间接)调用者能够处理这个问题。 O 《C++ 一个库的作者可以检测出发生了运行时错误,但一般不知道 怎样去处理它们(因为和用户具体的应用有关); ▶ 另一方面,库的用户知道怎样处理这些错误,但却无法检查 它们何时发生(如果能检测,就可以再用户的代码里处理 了,不用留给库去发现)。 提供异常处理机制的的基本思想 让一个函数在发现了自己无法处理的错误时抛出(throw)一个 异常,然后它的(直接或者间接)调用者能够处理这个问题。 O 《C++0 码力 | 33 页 | 626.40 KB | 1 年前3 Java 应用与开发 - 异常处理一个库的作者可以检测出发生了运行时错误,但一般不知道 怎样去处理它们(因为和用户具体的应用有关); ▶ 另一方面,库的用户知道怎样处理这些错误,但却无法检查 它们何时发生(如果能检测,就可以再用户的代码里处理 了,不用留给库去发现)。 提供异常处理机制的的基本思想 让一个函数在发现了自己无法处理的错误时抛出(throw)一个 异常,然后它的(直接或者间接)调用者能够处理这个问题。 O 《C++ 一个库的作者可以检测出发生了运行时错误,但一般不知道 怎样去处理它们(因为和用户具体的应用有关); ▶ 另一方面,库的用户知道怎样处理这些错误,但却无法检查 它们何时发生(如果能检测,就可以再用户的代码里处理 了,不用留给库去发现)。 提供异常处理机制的的基本思想 让一个函数在发现了自己无法处理的错误时抛出(throw)一个 异常,然后它的(直接或者间接)调用者能够处理这个问题。 O 《C++ 一个库的作者可以检测出发生了运行时错误,但一般不知道 怎样去处理它们(因为和用户具体的应用有关); ▶ 另一方面,库的用户知道怎样处理这些错误,但却无法检查 它们何时发生(如果能检测,就可以再用户的代码里处理 了,不用留给库去发现)。 提供异常处理机制的的基本思想 让一个函数在发现了自己无法处理的错误时抛出(throw)一个 异常,然后它的(直接或者间接)调用者能够处理这个问题。 O 《C++0 码力 | 33 页 | 626.40 KB | 1 年前3
共 44 条
- 1
- 2
- 3
- 4
- 5













