 现代C++ 教程:高速上手C++11/14/17/20. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 4 目录 目录 7.2 互斥量与临界区 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 7.3 期物 . . 向。尽管它的出现并不如 C++11 的分量之重,但它包含了大量小而美的语言与特性(例如结构化绑定), 这些特性的出现再一次修正了我们在 C++ 中的编程范式。 现代 C++ 还为自身的标准库增加了非常多的工具和方法,诸如在语言自身标准的层面上制定了 std::thread,从而支持了并发编程,在不同平台上不再依赖于系统底层的 API,实现了语言层面的跨 平台支持;std::regex 提供了完整的正则表达式支持等等。C++98 象进行初始化时进行使用。在传统 C++ 中, 不同的对象有着不同的初始化方法,例如普通数组、POD (Plain Old Data,即没有构造、析构和虚函 数的类或结构体)类型都可以使用 {} 进行初始化,也就是我们所说的初始化列表。而对于类对象的初始 化,要么需要通过拷贝构造、要么就需要使用 () 进行。这些不同方法都针对各自对象,不能通用。例如: #include0 码力 | 83 页 | 2.42 MB | 1 年前3 现代C++ 教程:高速上手C++11/14/17/20. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 4 目录 目录 7.2 互斥量与临界区 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 7.3 期物 . . 向。尽管它的出现并不如 C++11 的分量之重,但它包含了大量小而美的语言与特性(例如结构化绑定), 这些特性的出现再一次修正了我们在 C++ 中的编程范式。 现代 C++ 还为自身的标准库增加了非常多的工具和方法,诸如在语言自身标准的层面上制定了 std::thread,从而支持了并发编程,在不同平台上不再依赖于系统底层的 API,实现了语言层面的跨 平台支持;std::regex 提供了完整的正则表达式支持等等。C++98 象进行初始化时进行使用。在传统 C++ 中, 不同的对象有着不同的初始化方法,例如普通数组、POD (Plain Old Data,即没有构造、析构和虚函 数的类或结构体)类型都可以使用 {} 进行初始化,也就是我们所说的初始化列表。而对于类对象的初始 化,要么需要通过拷贝构造、要么就需要使用 () 进行。这些不同方法都针对各自对象,不能通用。例如: #include0 码力 | 83 页 | 2.42 MB | 1 年前3
 《深入浅出MFC》2/e为各位尽力的极限。如果(万一)您看不到文件内容,可能与字形的安装有关- 虽然我已尝试内嵌字形。anyway,阅读方面的问题我亦没有精力与时间为您解 决。请各位自行开辟讨论区,彼此交换阅读此电子书的solution。请热心的读者 告诉我您阅读成功与否,以及网上讨论区(如有的话)在哪里。 曾有读者告诉我,《深入浅出MFC》1/e 简体版在大陆被扫描上网。亦有读者 告诉我,大陆某些书籍明显对本书侵权(详细情况我不清楚)。这种不尊重作 的選用 / 469 Template-Based Classes / 471 Template-Based Classes 的使用方法 / 471 CScribbleDoc 的修改 / 473 SCRIBBLEDOC.H / 475 SCRIBBLEDOC 当使用者的一个鼠标动作可能引发许多许多程序绘图动作时,绘图效率就变得非常重 要。因此在考量如何加强显示能力时,我们就得设计所谓的「必要绘图区」,也就是 所谓的Invalidate Region(不再适用的区域)。事实上每当使用者开始绘图(增加新 的线条),程序可以设定「必要绘图区」为:该线条之最小外围四方形。为了记录这 项数据,Step1 所设计并延续至今的Document 数据结构必须改变。 Step10 码力 | 1009 页 | 11.08 MB | 1 年前3 《深入浅出MFC》2/e为各位尽力的极限。如果(万一)您看不到文件内容,可能与字形的安装有关- 虽然我已尝试内嵌字形。anyway,阅读方面的问题我亦没有精力与时间为您解 决。请各位自行开辟讨论区,彼此交换阅读此电子书的solution。请热心的读者 告诉我您阅读成功与否,以及网上讨论区(如有的话)在哪里。 曾有读者告诉我,《深入浅出MFC》1/e 简体版在大陆被扫描上网。亦有读者 告诉我,大陆某些书籍明显对本书侵权(详细情况我不清楚)。这种不尊重作 的選用 / 469 Template-Based Classes / 471 Template-Based Classes 的使用方法 / 471 CScribbleDoc 的修改 / 473 SCRIBBLEDOC.H / 475 SCRIBBLEDOC 当使用者的一个鼠标动作可能引发许多许多程序绘图动作时,绘图效率就变得非常重 要。因此在考量如何加强显示能力时,我们就得设计所谓的「必要绘图区」,也就是 所谓的Invalidate Region(不再适用的区域)。事实上每当使用者开始绘图(增加新 的线条),程序可以设定「必要绘图区」为:该线条之最小外围四方形。为了记录这 项数据,Step1 所设计并延续至今的Document 数据结构必须改变。 Step10 码力 | 1009 页 | 11.08 MB | 1 年前3
 Hello 算法 1.1.0 C++ 版两年前,我在力扣上分享了“剑指 Offer”系列题解,受到了许多读者的鼓励和支持。在与读者交流期间,我 最常被问的一个问题是“如何入门算法”。逐渐地,我对这个问题产生了浓厚的兴趣。 两眼一抹黑地刷题似乎是最受欢迎的方法,简单、直接且有效。然而刷题就如同玩“扫雷”游戏,自学能力 强的人能够顺利将地雷逐个排掉,而基础不足的人很可能被炸得满头是包,并在挫折中步步退缩。通读教材 也是一种常见做法,但对于面向求职的人来 案,即使不是最 优解,也至少是一次积极的尝试。本书虽然不足以让你直接拿到 Offer,但会引导你探索数据结构与算法的 “知识地图”,带你了解不同“地雷”的形状、大小和分布位置,让你掌握各种“排雷方法”。有了这些本领, 相信你可以更加自如地刷题和阅读文献,逐步构建起完整的知识体系。 我深深赞同费曼教授所言:“Knowledge isn’t free. You have to pay attention AlphaGo 的精彩棋局、ChatGPT 的自然交互,这些应用都是算法在计算机上的精妙演绎。 事实上,在计算机问世之前,算法和数据结构就已经存在于世界的各个角落。早期的算法相对简单,例如古 代的计数方法和工具制作步骤等。随着文明的进步,算法逐渐变得更加精细和复杂。从巧夺天工的匠人技艺、 到解放生产力的工业产品、再到宇宙运行的科学规律,几乎每一件平凡或令人惊叹的事物背后,都隐藏着精 妙的算法思想。0 码力 | 379 页 | 18.47 MB | 1 年前3 Hello 算法 1.1.0 C++ 版两年前,我在力扣上分享了“剑指 Offer”系列题解,受到了许多读者的鼓励和支持。在与读者交流期间,我 最常被问的一个问题是“如何入门算法”。逐渐地,我对这个问题产生了浓厚的兴趣。 两眼一抹黑地刷题似乎是最受欢迎的方法,简单、直接且有效。然而刷题就如同玩“扫雷”游戏,自学能力 强的人能够顺利将地雷逐个排掉,而基础不足的人很可能被炸得满头是包,并在挫折中步步退缩。通读教材 也是一种常见做法,但对于面向求职的人来 案,即使不是最 优解,也至少是一次积极的尝试。本书虽然不足以让你直接拿到 Offer,但会引导你探索数据结构与算法的 “知识地图”,带你了解不同“地雷”的形状、大小和分布位置,让你掌握各种“排雷方法”。有了这些本领, 相信你可以更加自如地刷题和阅读文献,逐步构建起完整的知识体系。 我深深赞同费曼教授所言:“Knowledge isn’t free. You have to pay attention AlphaGo 的精彩棋局、ChatGPT 的自然交互,这些应用都是算法在计算机上的精妙演绎。 事实上,在计算机问世之前,算法和数据结构就已经存在于世界的各个角落。早期的算法相对简单,例如古 代的计数方法和工具制作步骤等。随着文明的进步,算法逐渐变得更加精细和复杂。从巧夺天工的匠人技艺、 到解放生产力的工业产品、再到宇宙运行的科学规律,几乎每一件平凡或令人惊叹的事物背后,都隐藏着精 妙的算法思想。0 码力 | 379 页 | 18.47 MB | 1 年前3
 Hello 算法 1.0.0 C++版两年前,我在力扣上分享了“剑指 Offer”系列题解,受到了许多读者的鼓励和支持。在与读者交流期间,我 最常被问的一个问题是“如何入门算法”。逐渐地,我对这个问题产生了浓厚的兴趣。 两眼一抹黑地刷题似乎是最受欢迎的方法,简单、直接且有效。然而刷题就如同玩“扫雷”游戏,自学能力 强的人能够顺利将地雷逐个排掉,而基础不足的人很可能被炸得满头是包,并在挫折中步步退缩。通读教材 也是一种常见做法,但对于面向求职的人来 案,即使不是最 优解,也至少是一次积极的尝试。本书虽然不足以让你直接拿到 Offer,但会引导你探索数据结构与算法的 “知识地图”,带你了解不同“地雷”的形状、大小和分布位置,让你掌握各种“排雷方法”。有了这些本领, 相信你可以更加自如地刷题和阅读文献,逐步构建起完整的知识体系。 我深深赞同费曼教授所言:“Knowledge isn’t free. You have to pay attention 算法源代码皆可一键运行,支持 Python、C++、Java、C#、Go、Swift、JavaScript、TypeScript、Dart、 Rust、C 和 Zig 等语言。 ‧ 鼓励读者在线上章节评论区互帮互助、共同进步,提问与评论通常可在两日内得到回复。 0.1.1 读者对象 若你是算法初学者,从未接触过算法,或者已经有一些刷题经验,对数据结构与算法有模糊的认识,在会与 不会之间反复横跳,那么本书正是为你量身定制的!0 码力 | 378 页 | 17.59 MB | 1 年前3 Hello 算法 1.0.0 C++版两年前,我在力扣上分享了“剑指 Offer”系列题解,受到了许多读者的鼓励和支持。在与读者交流期间,我 最常被问的一个问题是“如何入门算法”。逐渐地,我对这个问题产生了浓厚的兴趣。 两眼一抹黑地刷题似乎是最受欢迎的方法,简单、直接且有效。然而刷题就如同玩“扫雷”游戏,自学能力 强的人能够顺利将地雷逐个排掉,而基础不足的人很可能被炸得满头是包,并在挫折中步步退缩。通读教材 也是一种常见做法,但对于面向求职的人来 案,即使不是最 优解,也至少是一次积极的尝试。本书虽然不足以让你直接拿到 Offer,但会引导你探索数据结构与算法的 “知识地图”,带你了解不同“地雷”的形状、大小和分布位置,让你掌握各种“排雷方法”。有了这些本领, 相信你可以更加自如地刷题和阅读文献,逐步构建起完整的知识体系。 我深深赞同费曼教授所言:“Knowledge isn’t free. You have to pay attention 算法源代码皆可一键运行,支持 Python、C++、Java、C#、Go、Swift、JavaScript、TypeScript、Dart、 Rust、C 和 Zig 等语言。 ‧ 鼓励读者在线上章节评论区互帮互助、共同进步,提问与评论通常可在两日内得到回复。 0.1.1 读者对象 若你是算法初学者,从未接触过算法,或者已经有一些刷题经验,对数据结构与算法有模糊的认识,在会与 不会之间反复横跳,那么本书正是为你量身定制的!0 码力 | 378 页 | 17.59 MB | 1 年前3
 Hello 算法 1.0.0b1 C++版两眼一抹黑地刷题应该是最受欢迎的方式,简单粗暴且有效。然而,刷题就如同玩“扫雷”游戏,自学能力强 的同学能够顺利地将地雷逐个排掉,而基础不足的同学很可能被炸的满头是包,并在受挫中步步退缩。通读教 材书籍也是常用方法,但对于面向求职的同学来说,毕业季、投递简历、应付笔面试已经占用大部分精力,厚 重的书本也因此成为巨大的挑战。 如果你也有上述烦恼,那么很幸运这本书找到了你。本书是我对于该问题给出的答案,虽然不一定正确,但至 一定正确,但至 少代表一次积极的尝试。这本书虽然不足以让你直接拿到 Offer ,但会引导你探索数据结构与算法的“知识地 图”,带你了解不同“地雷”的形状大小和分布位置,让你掌握各种“排雷方法”。有了这些本领,相信你可以 更加得心应手地刷题与阅读文献,逐步搭建起完整的知识体系。 书内的代码配有可一键运行的源文件,托管在 github.com/krahets/hello‑algo 仓库。动画在 知识,内容清晰易懂、学习曲线平滑; ‧ 算法源代码皆可一键运行,支持 Java, C++, Python, Go, JS, TS, C#, Swift, Zig 等语言; ‧ 鼓励读者在章节讨论区互帮互助、共同进步,提问与评论一般能在两日内得到回复; 0.1.1. 读者对象 如果您是「算法初学者」,完全没有接触过算法,或者已经有少量刷题,对数据结构与算法有朦胧的理解,在 会与不会之间反复横跳,那么这本书就是为你而写!0 码力 | 187 页 | 14.71 MB | 1 年前3 Hello 算法 1.0.0b1 C++版两眼一抹黑地刷题应该是最受欢迎的方式,简单粗暴且有效。然而,刷题就如同玩“扫雷”游戏,自学能力强 的同学能够顺利地将地雷逐个排掉,而基础不足的同学很可能被炸的满头是包,并在受挫中步步退缩。通读教 材书籍也是常用方法,但对于面向求职的同学来说,毕业季、投递简历、应付笔面试已经占用大部分精力,厚 重的书本也因此成为巨大的挑战。 如果你也有上述烦恼,那么很幸运这本书找到了你。本书是我对于该问题给出的答案,虽然不一定正确,但至 一定正确,但至 少代表一次积极的尝试。这本书虽然不足以让你直接拿到 Offer ,但会引导你探索数据结构与算法的“知识地 图”,带你了解不同“地雷”的形状大小和分布位置,让你掌握各种“排雷方法”。有了这些本领,相信你可以 更加得心应手地刷题与阅读文献,逐步搭建起完整的知识体系。 书内的代码配有可一键运行的源文件,托管在 github.com/krahets/hello‑algo 仓库。动画在 知识,内容清晰易懂、学习曲线平滑; ‧ 算法源代码皆可一键运行,支持 Java, C++, Python, Go, JS, TS, C#, Swift, Zig 等语言; ‧ 鼓励读者在章节讨论区互帮互助、共同进步,提问与评论一般能在两日内得到回复; 0.1.1. 读者对象 如果您是「算法初学者」,完全没有接触过算法,或者已经有少量刷题,对数据结构与算法有朦胧的理解,在 会与不会之间反复横跳,那么这本书就是为你而写!0 码力 | 187 页 | 14.71 MB | 1 年前3
 Hello 算法 1.2.0 简体中文 C++ 版两年前,我在力扣上分享了“剑指 Offer”系列题解,受到了许多读者的鼓励和支持。在与读者交流期间,我 最常被问的一个问题是“如何入门算法”。逐渐地,我对这个问题产生了浓厚的兴趣。 两眼一抹黑地刷题似乎是最受欢迎的方法,简单、直接且有效。然而刷题就如同玩“扫雷”游戏,自学能力 强的人能够顺利将地雷逐个排掉,而基础不足的人很可能被炸得满头是包,并在挫折中步步退缩。通读教材 也是一种常见做法,但对于面向求职的人来 案,即使不是最 优解,也至少是一次积极的尝试。本书虽然不足以让你直接拿到 Offer,但会引导你探索数据结构与算法的 “知识地图”,带你了解不同“地雷”的形状、大小和分布位置,让你掌握各种“排雷方法”。有了这些本领, 相信你可以更加自如地刷题和阅读文献,逐步构建起完整的知识体系。 我深深赞同费曼教授所言:“Knowledge isn’t free. You have to pay attention AlphaGo 的精彩棋局、ChatGPT 的自然交互,这些应用都是算法在计算机上的精妙演绎。 事实上,在计算机问世之前,算法和数据结构就已经存在于世界的各个角落。早期的算法相对简单,例如古 代的计数方法和工具制作步骤等。随着文明的进步,算法逐渐变得更加精细和复杂。从巧夺天工的匠人技艺、 到解放生产力的工业产品、再到宇宙运行的科学规律,几乎每一件平凡或令人惊叹的事物背后,都隐藏着精 妙的算法思想。0 码力 | 379 页 | 18.48 MB | 10 月前3 Hello 算法 1.2.0 简体中文 C++ 版两年前,我在力扣上分享了“剑指 Offer”系列题解,受到了许多读者的鼓励和支持。在与读者交流期间,我 最常被问的一个问题是“如何入门算法”。逐渐地,我对这个问题产生了浓厚的兴趣。 两眼一抹黑地刷题似乎是最受欢迎的方法,简单、直接且有效。然而刷题就如同玩“扫雷”游戏,自学能力 强的人能够顺利将地雷逐个排掉,而基础不足的人很可能被炸得满头是包,并在挫折中步步退缩。通读教材 也是一种常见做法,但对于面向求职的人来 案,即使不是最 优解,也至少是一次积极的尝试。本书虽然不足以让你直接拿到 Offer,但会引导你探索数据结构与算法的 “知识地图”,带你了解不同“地雷”的形状、大小和分布位置,让你掌握各种“排雷方法”。有了这些本领, 相信你可以更加自如地刷题和阅读文献,逐步构建起完整的知识体系。 我深深赞同费曼教授所言:“Knowledge isn’t free. You have to pay attention AlphaGo 的精彩棋局、ChatGPT 的自然交互,这些应用都是算法在计算机上的精妙演绎。 事实上,在计算机问世之前,算法和数据结构就已经存在于世界的各个角落。早期的算法相对简单,例如古 代的计数方法和工具制作步骤等。随着文明的进步,算法逐渐变得更加精细和复杂。从巧夺天工的匠人技艺、 到解放生产力的工业产品、再到宇宙运行的科学规律,几乎每一件平凡或令人惊叹的事物背后,都隐藏着精 妙的算法思想。0 码力 | 379 页 | 18.48 MB | 10 月前3
 Hello 算法 1.0.0b2 C++版两眼一抹黑地刷题应该是最受欢迎的方式,简单粗暴且有效。然而,刷题就如同玩“扫雷”游戏,自学能力强 的同学能够顺利地将地雷逐个排掉,而基础不足的同学很可能被炸的满头是包,并在受挫中步步退缩。通读教 材书籍也是常用方法,但对于面向求职的同学来说,毕业季、投递简历、应付笔面试已经占用大部分精力,厚 重的书本也因此成为巨大的挑战。 如果你也有上述烦恼,那么很幸运这本书找到了你。本书是我对于该问题给出的答案,虽然不一定正确,但至 一定正确,但至 少代表一次积极的尝试。这本书虽然不足以让你直接拿到 Offer ,但会引导你探索数据结构与算法的“知识地 图”,带你了解不同“地雷”的形状大小和分布位置,让你掌握各种“排雷方法”。有了这些本领,相信你可以 更加得心应手地刷题与阅读文献,逐步搭建起完整的知识体系。 书内的代码配有可一键运行的源文件,托管在 github.com/krahets/hello‑algo 仓库。动画在 知识,内容清晰易懂、学习曲线平滑; ‧ 算法源代码皆可一键运行,支持 Java, C++, Python, Go, JS, TS, C#, Swift, Zig 等语言; ‧ 鼓励读者在章节讨论区互帮互助、共同进步,提问与评论一般能在两日内得到回复; 0.1.1. 读者对象 如果您是「算法初学者」,完全没有接触过算法,或者已经有少量刷题,对数据结构与算法有朦胧的理解,在 会与不会之间反复横跳,那么这本书就是为你而写!0 码力 | 197 页 | 15.72 MB | 1 年前3 Hello 算法 1.0.0b2 C++版两眼一抹黑地刷题应该是最受欢迎的方式,简单粗暴且有效。然而,刷题就如同玩“扫雷”游戏,自学能力强 的同学能够顺利地将地雷逐个排掉,而基础不足的同学很可能被炸的满头是包,并在受挫中步步退缩。通读教 材书籍也是常用方法,但对于面向求职的同学来说,毕业季、投递简历、应付笔面试已经占用大部分精力,厚 重的书本也因此成为巨大的挑战。 如果你也有上述烦恼,那么很幸运这本书找到了你。本书是我对于该问题给出的答案,虽然不一定正确,但至 一定正确,但至 少代表一次积极的尝试。这本书虽然不足以让你直接拿到 Offer ,但会引导你探索数据结构与算法的“知识地 图”,带你了解不同“地雷”的形状大小和分布位置,让你掌握各种“排雷方法”。有了这些本领,相信你可以 更加得心应手地刷题与阅读文献,逐步搭建起完整的知识体系。 书内的代码配有可一键运行的源文件,托管在 github.com/krahets/hello‑algo 仓库。动画在 知识,内容清晰易懂、学习曲线平滑; ‧ 算法源代码皆可一键运行,支持 Java, C++, Python, Go, JS, TS, C#, Swift, Zig 等语言; ‧ 鼓励读者在章节讨论区互帮互助、共同进步,提问与评论一般能在两日内得到回复; 0.1.1. 读者对象 如果您是「算法初学者」,完全没有接触过算法,或者已经有少量刷题,对数据结构与算法有朦胧的理解,在 会与不会之间反复横跳,那么这本书就是为你而写!0 码力 | 197 页 | 15.72 MB | 1 年前3
 Hello 算法 1.0.0b5 C++版两年前,我在力扣上分享了《剑指 Offer》系列题解,受到了许多同学的喜爱和支持。在与读者的交流期间, 最常收到的一个问题是“如何入门学习算法”。我逐渐对这个问题产生了浓厚的兴趣。 两眼一抹黑地刷题似乎是最受欢迎的方法,简单直接且有效。刷题就如同玩“扫雷”游戏,自学能力强的同 学能够顺利地将地雷逐个排掉,而基础不足的同学很可能被炸的满头是包,并在挫折中步步退缩。通读教材 书籍也是一种常见做法,但对于面向求职的 ,即使不是最优解, 也至少是一次积极的尝试。这本书虽然不足以让你直接拿到 Offer ,但会引导你探索数据结构与算法的“知 识地图”,带你了解不同“地雷”的形状大小和分布位置,让你掌握各种“排雷方法”。有了这些本领,相信 你可以更加自如地应对刷题和阅读文献,逐步构建起完整的知识体系。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。动画在 容清晰易懂、学习曲线平滑。 ‧ 算法源代码皆可一键运行,支持 Java、C++、Python、Go、JS、TS、C#、Swift、Rust、Dart、Zig 等 语言。 ‧ 鼓励读者在章节讨论区互帮互助、共同进步,提问与评论通常可在两日内得到回复。 0.1.1 读者对象 若您是算法初学者,从未接触过算法,或者已经有一些刷题经验,对数据结构与算法有模糊的认识,在会与 不会之间反复横跳,那么这本书正是为您量身定制!0 码力 | 377 页 | 30.69 MB | 1 年前3 Hello 算法 1.0.0b5 C++版两年前,我在力扣上分享了《剑指 Offer》系列题解,受到了许多同学的喜爱和支持。在与读者的交流期间, 最常收到的一个问题是“如何入门学习算法”。我逐渐对这个问题产生了浓厚的兴趣。 两眼一抹黑地刷题似乎是最受欢迎的方法,简单直接且有效。刷题就如同玩“扫雷”游戏,自学能力强的同 学能够顺利地将地雷逐个排掉,而基础不足的同学很可能被炸的满头是包,并在挫折中步步退缩。通读教材 书籍也是一种常见做法,但对于面向求职的 ,即使不是最优解, 也至少是一次积极的尝试。这本书虽然不足以让你直接拿到 Offer ,但会引导你探索数据结构与算法的“知 识地图”,带你了解不同“地雷”的形状大小和分布位置,让你掌握各种“排雷方法”。有了这些本领,相信 你可以更加自如地应对刷题和阅读文献,逐步构建起完整的知识体系。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。动画在 容清晰易懂、学习曲线平滑。 ‧ 算法源代码皆可一键运行,支持 Java、C++、Python、Go、JS、TS、C#、Swift、Rust、Dart、Zig 等 语言。 ‧ 鼓励读者在章节讨论区互帮互助、共同进步,提问与评论通常可在两日内得到回复。 0.1.1 读者对象 若您是算法初学者,从未接触过算法,或者已经有一些刷题经验,对数据结构与算法有模糊的认识,在会与 不会之间反复横跳,那么这本书正是为您量身定制!0 码力 | 377 页 | 30.69 MB | 1 年前3
 Hello 算法 1.0.0b4 C++版Offer》系列题解,受到了许多朋友的喜爱与支持。在此期间,我回答了众 多读者的评论问题,其中最常见的一个问题是“如何入门学习算法”。我逐渐也对这个问题产生了浓厚的兴 趣。 两眼一抹黑地刷题似乎是最受欢迎的方法,简单直接且有效。然而,刷题就如同玩“扫雷”游戏,自学能力 强的同学能够顺利地将地雷逐个排掉,而基础不足的同学很可能被炸的满头是包,并在挫折中步步退缩。通 读教材书籍也是一种常见做法,但对于面向 ,虽然不一定正确, 但至少是一次积极的尝试。这本书虽然不足以让你直接拿到 Offer ,但会引导你探索数据结构与算法的“知 识地图”,带你了解不同“地雷”的形状大小和分布位置,让你掌握各种“排雷方法”。有了这些本领,相信 你可以更加自如地应对刷题和阅读文献,逐步构建起完整的知识体系。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。动画在 知识,内容清晰易懂、学习曲线平滑。 ‧ 算法源代码皆可一键运行,支持 Java, C++, Python, Go, JS, TS, C#, Swift, Zig 等语言。 ‧ 鼓励读者在章节讨论区互帮互助、共同进步,提问与评论通常可在两日内得到回复。 0.1.1. 读者对象 若您是算法初学者,从未接触过算法,或者已经有一些刷题经验,对数据结构与算法有模糊的认识,在会与 不会之间反复横跳,那么这本书正是为您量身定制!0 码力 | 343 页 | 27.39 MB | 1 年前3 Hello 算法 1.0.0b4 C++版Offer》系列题解,受到了许多朋友的喜爱与支持。在此期间,我回答了众 多读者的评论问题,其中最常见的一个问题是“如何入门学习算法”。我逐渐也对这个问题产生了浓厚的兴 趣。 两眼一抹黑地刷题似乎是最受欢迎的方法,简单直接且有效。然而,刷题就如同玩“扫雷”游戏,自学能力 强的同学能够顺利地将地雷逐个排掉,而基础不足的同学很可能被炸的满头是包,并在挫折中步步退缩。通 读教材书籍也是一种常见做法,但对于面向 ,虽然不一定正确, 但至少是一次积极的尝试。这本书虽然不足以让你直接拿到 Offer ,但会引导你探索数据结构与算法的“知 识地图”,带你了解不同“地雷”的形状大小和分布位置,让你掌握各种“排雷方法”。有了这些本领,相信 你可以更加自如地应对刷题和阅读文献,逐步构建起完整的知识体系。 本书中的代码附有可一键运行的源文件,托管于 github.com/krahets/hello‑algo 仓库。动画在 知识,内容清晰易懂、学习曲线平滑。 ‧ 算法源代码皆可一键运行,支持 Java, C++, Python, Go, JS, TS, C#, Swift, Zig 等语言。 ‧ 鼓励读者在章节讨论区互帮互助、共同进步,提问与评论通常可在两日内得到回复。 0.1.1. 读者对象 若您是算法初学者,从未接触过算法,或者已经有一些刷题经验,对数据结构与算法有模糊的认识,在会与 不会之间反复横跳,那么这本书正是为您量身定制!0 码力 | 343 页 | 27.39 MB | 1 年前3
 C++高性能并行编程与优化 -  课件 - 12 从计算机组成原理看 C 语言指针移”一位,这样就不会出现 -0 这种奇怪的东西了,而且表示范围也扩大了一位,虽然是扩 大在负数部分。 有符号整数 vs 无符号整数 • 刚刚说的让 10000000 表示 -1 , 11111111 表示 -128 的方法就叫做反码表示法。 • 但是这样还有一个问题,那就是硬件电路上,需要完全重新设计,对符号位做一些特殊判 断,才能支持有符号整数的加减法,因此如今的计算机都采用了一种更聪明的表示法: • 他们让 字节内存。因此接下来的 for 循环访问了 n 个元素,实际上是访问了 n*4 个字节,会产生访 问越界现象,轻则程序直接奔溃,重则被黑客利用 来入侵系统。 如果想要的是 int 数组呢? • 解决方法是,使用 malloc(n * 4) 来分配 int 数组 ,其中 4 代表 int 类型的大小。 如果想要的是 short 数组呢? • 已知 short 的大小是 2 字节,所以用 malloc(n 实际把数据写入到你分配的数组。这样就不需要让 func 负责 malloc ,对调用者自由度更 高。 • 例子: clGetPlatformIDs , glGetProgramInfo 等专业 API 函数刻在 DNA 里的调用方法 。 错误典型:返回栈上数组的地址 • 看右边这个例子,这是我在一份看起来很 专业的 CFD 代码里看到的,真的泵不住 了。 • int a[1024] 是一个定长数组,是在栈上分 配的。而栈变量的特点是,函数0 码力 | 128 页 | 2.95 MB | 1 年前3 C++高性能并行编程与优化 -  课件 - 12 从计算机组成原理看 C 语言指针移”一位,这样就不会出现 -0 这种奇怪的东西了,而且表示范围也扩大了一位,虽然是扩 大在负数部分。 有符号整数 vs 无符号整数 • 刚刚说的让 10000000 表示 -1 , 11111111 表示 -128 的方法就叫做反码表示法。 • 但是这样还有一个问题,那就是硬件电路上,需要完全重新设计,对符号位做一些特殊判 断,才能支持有符号整数的加减法,因此如今的计算机都采用了一种更聪明的表示法: • 他们让 字节内存。因此接下来的 for 循环访问了 n 个元素,实际上是访问了 n*4 个字节,会产生访 问越界现象,轻则程序直接奔溃,重则被黑客利用 来入侵系统。 如果想要的是 int 数组呢? • 解决方法是,使用 malloc(n * 4) 来分配 int 数组 ,其中 4 代表 int 类型的大小。 如果想要的是 short 数组呢? • 已知 short 的大小是 2 字节,所以用 malloc(n 实际把数据写入到你分配的数组。这样就不需要让 func 负责 malloc ,对调用者自由度更 高。 • 例子: clGetPlatformIDs , glGetProgramInfo 等专业 API 函数刻在 DNA 里的调用方法 。 错误典型:返回栈上数组的地址 • 看右边这个例子,这是我在一份看起来很 专业的 CFD 代码里看到的,真的泵不住 了。 • int a[1024] 是一个定长数组,是在栈上分 配的。而栈变量的特点是,函数0 码力 | 128 页 | 2.95 MB | 1 年前3
共 33 条
- 1
- 2
- 3
- 4













