Hello 算法 1.2.0 繁体中文 C++ 版
在與讀者交流期間,我 最常被問到的一個問題是“如何入門演算法”。漸漸地,我對這個問題產生了濃厚的興趣。 兩眼一抹黑地刷題似乎是最受歡迎的方法,簡單、直接且有效。然而刷題就如同玩“踩地雷”遊戲,自學能 力強的人能夠順利將地雷逐個排掉,而基礎不足的人很可能被炸得焦頭爛額,並在挫折中步步退縮。通讀教 材也是一種常見做法,但對於面向求職的人來說,畢業論文、投遞履歷、準備筆試和面試已經消耗了大部分 attention.”從這個意義上看,這本 書並非完全“免費”。為了不辜負你為本書所付出的寶貴“注意力”,我會竭盡所能,投入最大的“注意力” 來完成本書的創作。 本人自知學疏才淺,書中內容雖然已經過一段時間的打磨,但一定仍有許多錯誤,懇請各位老師與同學批評 指正。 本書中的程式碼附有可一鍵執行的原始檔,託管於 github.com/krahets/hello‑algo 倉庫。 動畫在 PDF 內的展示效果有限,可訪問 com 網頁版以獲得更佳的閱讀體驗。 推薦語 “一本通俗易懂的資料結構與演算法入門書,引導讀者手腦並用地學習,強烈推薦演算法初學者閱讀!” ——鄧俊輝,清華大學計算機系教授 “如果我當年學資料結構與演算法時有《Hello 演算法》,學起來應該會簡單 10 倍!” ——李沐,亞馬遜資深首席科學家 電腦的出現為世界帶來了巨大的變革,它憑藉高速的運算能力與卓越的可程式化特性,成為執行演算法 與處0 码力 | 379 页 | 18.79 MB | 10 月前3《深入浅出MFC》2/e
"Grid" ActiveX Control:OcxTest 程式 / 827 深入淺出 MFC 26 第五篇 附錄 / 843 附錄 A 無責任書評:從搖籃到墳墓 - Windows 的完全學習 / 845 * 無責任書評:MFC ㆕大㆝王 / 856 附錄 B Scribble Step5 程式原始碼列表 / 873 附錄 C Visual C++ 5.0 MFC 範例程式總覽 名称、对话框名称;我必须改变RC 文件中的菜单、对话框等资源;我也得改变DEF 档 中的模块名称和DESCRIPTION 叙述句。这些琐碎的事做完,我才开始在DEF、C、RC 档中添骨添肉。 数以打计的小步骤要做!! 有了AppWizard,这些沉闷而令人生厌的琐碎工作都将自动化起来。不止如此,AppWizard 可以为我们做出一致化的骨干程序出来。以此种方式应付(我的意思是产生)标准接口 变RC 文件的字符串表格即可。噢当然,你 还得选一套适当的Common Dialog DLL。 AppWizard 为我们制作骨干程序时不是加了一大套Menu 吗,对应于这些Menu,有数 以打计的字符串资源,准备给状态列使用。下面是RC 文件字符串表格的一小部份: 第4章 Visual C++ - 整合性軟體開發環境 301 STRINGTABLE DISCARDABLE BEGIN0 码力 | 1009 页 | 11.08 MB | 1 年前3C++高性能并行编程与优化 - 课件 - 16 现代 CMake 模块化项目管理指南
开源的),可能你 set(Qt5_DIR D:/Qt5) ,而人家却需要 set(Qt5_DIR E:/Qt5) 呢?就冲突了。所以“单次有效”虽然劳驾您的高抬贵手每次命令行打一下 - DQt5_DIR=”D:/Qt5” ,但人家也打一下 -DQt5_DIR=”E:/Qt5” ,就没有冲突,各美其美,美美与 共,赋能多元化社会,下沉团队合作发力面。 • 实际上只要你不删 build ,不需要每次都 -DQt5_DIR0 码力 | 56 页 | 6.87 MB | 1 年前3C++高性能并行编程与优化 - 课件 - 14 C++ 标准库系列课 - 你所不知道的 set 容器
使得他能模仿指针的行为,从而尽可能在不同容器之间重 用算法(例如 std::find 和 std::reverse ),而不必修改算 法的代码本身,是 STL 库解耦思想的体现。 set 的遍历 • 为了减少重复打代码的痛 苦, C++17 引入了个语 法糖:基于范围的 for 循 环 (range-based for loop) 。 • for ( 类型 变量名 : 可迭代对象 ) • 这种写法,无非就是刚才0 码力 | 83 页 | 10.23 MB | 1 年前3C++高性能并行编程与优化 - 课件 - 08 CUDA 开启的 GPU 编程
的值,并填入到数组 arr 中。 • 这里为什么用 sinf 而不是 sin ? • 因为 sin 是 double 类型的正弦函数,而我 们需要的 sinf 是 float 类型的正弦函数。可 不要偷懒少打一个 f 哦,否则影响性能。 • 完成同步之后,和 CPU 算出来的比较差值, 看看 GPU 算的是否准确无误,从右边的输出 可以看到基本是一致的。 测试一下时间 • 使用第六节课中的 ticktock0 码力 | 142 页 | 13.52 MB | 1 年前3Hello 算法 1.0.0b1 C++版
hello‑algo.com 148 Figure 9‑10. 图的广度优先遍历步骤 � 广度优先遍历的序列是否唯一? 不唯一。广度优先遍历只要求“由近及远”,而多个相同距离的顶点的遍历顺序允许被任意打 乱。以上图为例,顶点 1 , 3 的访问顺序可以交换、顶点 2 , 4 , 6 的访问顺序也可以任意交换、 以此类推⋯⋯ 复杂度分析 时间复杂度:所有顶点都会入队、出队一次,使用 ?(|? |)0 码力 | 187 页 | 14.71 MB | 1 年前3Hello 算法 1.0.0b2 C++版
hello‑algo.com 148 Figure 9‑10. 图的广度优先遍历步骤 � 广度优先遍历的序列是否唯一? 不唯一。广度优先遍历只要求“由近及远”,而多个相同距离的顶点的遍历顺序允许被任意打 乱。以上图为例,顶点 1 , 3 的访问顺序可以交换、顶点 2 , 4 , 6 的访问顺序也可以任意交换、 以此类推⋯⋯ 复杂度分析 时间复杂度:所有顶点都会入队、出队一次,使用 ?(|? |)0 码力 | 197 页 | 15.72 MB | 1 年前3Hello 算法 1.0.0b4 C++版
系统需要安装 MinGW(配置教程),MacOS 自带 Clang 无需安装。 2. 在 VSCode 的插件市场中搜索 c++ ,安装 C/C++ Extension Pack 。 3.(可 选) 打 开 Settings 页 面, 搜 索 Clang_format_fallback Style 代 码 格 式 化 选 项, 设 置 为 { BasedOnStyle: Microsoft, BreakBeforeBraces:0 码力 | 343 页 | 27.39 MB | 1 年前3Hello 算法 1.1.0 C++ 版
系统需要安装 MinGW(配置教程);MacOS 自带 Clang ,无须安装。 2. 在 VS Code 的插件市场中搜索 c++ ,安装 C/C++ Extension Pack 。 3.(可 选) 打 开 Settings 页 面, 搜 索 Clang_format_fallback Style 代 码 格 式 化 选 项, 设 置 为 { BasedOnStyle: Microsoft, BreakBeforeBraces:0 码力 | 379 页 | 18.47 MB | 1 年前3Hello 算法 1.0.0b5 C++版
系统需要安装 MinGW(配置教程),MacOS 自带 Clang 无须安装。 2. 在 VSCode 的插件市场中搜索 c++ ,安装 C/C++ Extension Pack 。 3.(可 选) 打 开 Settings 页 面, 搜 索 Clang_format_fallback Style 代 码 格 式 化 选 项, 设 置 为 { BasedOnStyle: Microsoft, BreakBeforeBraces:0 码力 | 377 页 | 30.69 MB | 1 年前3
共 12 条
- 1
- 2