This commit is contained in:
krahets
2023-04-17 18:24:27 +08:00
parent f76b7ed47c
commit ca2ccfea0b
70 changed files with 12269 additions and 13539 deletions

View File

@@ -25,7 +25,7 @@
<title>13.2.   一起参与创作 - Hello 算法</title>
<title>14.2.   一起参与创作 - Hello 算法</title>
@@ -79,7 +79,7 @@
<div data-md-component="skip">
<a href="#132" class="md-skip">
<a href="#142" class="md-skip">
跳转至
</a>
@@ -113,7 +113,7 @@
<div class="md-header__topic" data-md-component="header-topic">
<span class="md-ellipsis">
13.2. &nbsp; 一起参与创作
14.2. &nbsp; 一起参与创作
</span>
</div>
@@ -441,8 +441,6 @@
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
@@ -504,23 +502,9 @@
<li class="md-nav__item">
<a href="../../chapter_computational_complexity/space_time_tradeoff/" class="md-nav__link">
2.4. &nbsp; 权衡时间与空间
</a>
</li>
<li class="md-nav__item">
<a href="../../chapter_computational_complexity/summary/" class="md-nav__link">
2.5. &nbsp; 小结
2.4. &nbsp; 小结
</a>
</li>
@@ -847,21 +831,17 @@
<label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="0">
6. &nbsp; &nbsp; 散列表
6. &nbsp; &nbsp; 二分查找
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_7">
<span class="md-nav__icon md-icon"></span>
6. &nbsp; &nbsp; 散列表
6. &nbsp; &nbsp; 二分查找
</label>
<ul class="md-nav__list" data-md-scrollfix>
@@ -871,36 +851,8 @@
<li class="md-nav__item">
<a href="../../chapter_hashing/hash_map/" class="md-nav__link">
6.1. &nbsp; 哈希表
</a>
</li>
<li class="md-nav__item">
<a href="../../chapter_hashing/hash_collision/" class="md-nav__link">
6.2. &nbsp; 哈希冲突处理
</a>
</li>
<li class="md-nav__item">
<a href="../../chapter_hashing/summary/" class="md-nav__link">
6.3. &nbsp; 小结
<a href="../../chapter_binary_search/binary_search/" class="md-nav__link">
6.1. &nbsp; 二分查找
</a>
</li>
@@ -938,21 +890,17 @@
<label class="md-nav__link" for="__nav_8" id="__nav_8_label" tabindex="0">
7. &nbsp; &nbsp;
7. &nbsp; &nbsp; 散列表
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_8_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_8">
<span class="md-nav__icon md-icon"></span>
7. &nbsp; &nbsp;
7. &nbsp; &nbsp; 散列表
</label>
<ul class="md-nav__list" data-md-scrollfix>
@@ -962,8 +910,8 @@
<li class="md-nav__item">
<a href="../../chapter_tree/binary_tree/" class="md-nav__link">
7.1. &nbsp; 二叉树
<a href="../../chapter_hashing/hash_map/" class="md-nav__link">
7.1. &nbsp; 哈希表
</a>
</li>
@@ -976,8 +924,8 @@
<li class="md-nav__item">
<a href="../../chapter_tree/binary_tree_traversal/" class="md-nav__link">
7.2. &nbsp; 二叉树遍历
<a href="../../chapter_hashing/hash_collision/" class="md-nav__link">
7.2. &nbsp; 哈希冲突处理
</a>
</li>
@@ -990,36 +938,8 @@
<li class="md-nav__item">
<a href="../../chapter_tree/binary_search_tree/" class="md-nav__link">
7.3. &nbsp; 二叉搜索树
</a>
</li>
<li class="md-nav__item">
<a href="../../chapter_tree/avl_tree/" class="md-nav__link">
7.4. &nbsp; AVL 树 *
</a>
</li>
<li class="md-nav__item">
<a href="../../chapter_tree/summary/" class="md-nav__link">
7.5. &nbsp; 小结
<a href="../../chapter_hashing/summary/" class="md-nav__link">
7.3. &nbsp; 小结
</a>
</li>
@@ -1057,17 +977,21 @@
<label class="md-nav__link" for="__nav_9" id="__nav_9_label" tabindex="0">
8. &nbsp; &nbsp;
8. &nbsp; &nbsp;
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_9_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_9">
<span class="md-nav__icon md-icon"></span>
8. &nbsp; &nbsp;
8. &nbsp; &nbsp;
</label>
<ul class="md-nav__list" data-md-scrollfix>
@@ -1077,8 +1001,8 @@
<li class="md-nav__item">
<a href="../../chapter_heap/heap/" class="md-nav__link">
8.1. &nbsp;
<a href="../../chapter_tree/binary_tree/" class="md-nav__link">
8.1. &nbsp; 二叉树
</a>
</li>
@@ -1091,8 +1015,8 @@
<li class="md-nav__item">
<a href="../../chapter_heap/build_heap/" class="md-nav__link">
8.2. &nbsp; 建堆操作 *
<a href="../../chapter_tree/binary_tree_traversal/" class="md-nav__link">
8.2. &nbsp; 二叉树遍历
</a>
</li>
@@ -1105,8 +1029,36 @@
<li class="md-nav__item">
<a href="../../chapter_heap/summary/" class="md-nav__link">
8.3. &nbsp; 小结
<a href="../../chapter_tree/binary_search_tree/" class="md-nav__link">
8.3. &nbsp; 二叉搜索树
</a>
</li>
<li class="md-nav__item">
<a href="../../chapter_tree/avl_tree/" class="md-nav__link">
8.4. &nbsp; AVL 树 *
</a>
</li>
<li class="md-nav__item">
<a href="../../chapter_tree/summary/" class="md-nav__link">
8.5. &nbsp; 小结
</a>
</li>
@@ -1144,19 +1096,17 @@
<label class="md-nav__link" for="__nav_10" id="__nav_10_label" tabindex="0">
9. &nbsp; &nbsp;
9. &nbsp; &nbsp;
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_10_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_10">
<span class="md-nav__icon md-icon"></span>
9. &nbsp; &nbsp;
9. &nbsp; &nbsp;
</label>
<ul class="md-nav__list" data-md-scrollfix>
@@ -1166,8 +1116,8 @@
<li class="md-nav__item">
<a href="../../chapter_graph/graph/" class="md-nav__link">
9.1. &nbsp;
<a href="../../chapter_heap/heap/" class="md-nav__link">
9.1. &nbsp;
</a>
</li>
@@ -1180,8 +1130,8 @@
<li class="md-nav__item">
<a href="../../chapter_graph/graph_operations/" class="md-nav__link">
9.2. &nbsp; 图基础操作
<a href="../../chapter_heap/build_heap/" class="md-nav__link">
9.2. &nbsp; 建堆操作 *
</a>
</li>
@@ -1194,22 +1144,8 @@
<li class="md-nav__item">
<a href="../../chapter_graph/graph_traversal/" class="md-nav__link">
9.3. &nbsp; 图的遍历
</a>
</li>
<li class="md-nav__item">
<a href="../../chapter_graph/summary/" class="md-nav__link">
9.4. &nbsp; 小结
<a href="../../chapter_heap/summary/" class="md-nav__link">
9.3. &nbsp; 小结
</a>
</li>
@@ -1252,14 +1188,14 @@
<label class="md-nav__link" for="__nav_11" id="__nav_11_label" tabindex="0">
10. &nbsp; &nbsp; 查找算法
10. &nbsp; &nbsp;
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_11_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_11">
<span class="md-nav__icon md-icon"></span>
10. &nbsp; &nbsp; 查找算法
10. &nbsp; &nbsp;
</label>
<ul class="md-nav__list" data-md-scrollfix>
@@ -1269,8 +1205,8 @@
<li class="md-nav__item">
<a href="../../chapter_searching/linear_search/" class="md-nav__link">
10.1. &nbsp; 线性查找
<a href="../../chapter_graph/graph/" class="md-nav__link">
10.1. &nbsp;
</a>
</li>
@@ -1283,8 +1219,8 @@
<li class="md-nav__item">
<a href="../../chapter_searching/binary_search/" class="md-nav__link">
10.2. &nbsp; 二分查找
<a href="../../chapter_graph/graph_operations/" class="md-nav__link">
10.2. &nbsp; 图基础操作
</a>
</li>
@@ -1297,8 +1233,8 @@
<li class="md-nav__item">
<a href="../../chapter_searching/hashing_search/" class="md-nav__link">
10.3. &nbsp; 哈希查找
<a href="../../chapter_graph/graph_traversal/" class="md-nav__link">
10.3. &nbsp; 图的遍历
</a>
</li>
@@ -1311,7 +1247,7 @@
<li class="md-nav__item">
<a href="../../chapter_searching/summary/" class="md-nav__link">
<a href="../../chapter_graph/summary/" class="md-nav__link">
10.4. &nbsp; 小结
</a>
</li>
@@ -1453,7 +1389,7 @@
<li class="md-nav__item">
<a href="../../chapter_sorting/bucket_sort/" class="md-nav__link">
11.6. &nbsp; 桶排序New
11.6. &nbsp; 桶排序
</a>
</li>
@@ -1467,7 +1403,7 @@
<li class="md-nav__item">
<a href="../../chapter_sorting/counting_sort/" class="md-nav__link">
11.7. &nbsp; 计数排序New
11.7. &nbsp; 计数排序
</a>
</li>
@@ -1481,7 +1417,7 @@
<li class="md-nav__item">
<a href="../../chapter_sorting/radix_sort/" class="md-nav__link">
11.8. &nbsp; 基数排序New
11.8. &nbsp; 基数排序
</a>
</li>
@@ -1529,17 +1465,104 @@
<label class="md-nav__link" for="__nav_13" id="__nav_13_label" tabindex="0">
12. &nbsp; &nbsp; 回溯算法
12. &nbsp; &nbsp; 搜索算法
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_13_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_13">
<span class="md-nav__icon md-icon"></span>
12. &nbsp; &nbsp; 回溯算法
12. &nbsp; &nbsp; 搜索算法
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../chapter_searching/searching_algorithm_revisited/" class="md-nav__link">
12.1. &nbsp; 搜索算法New
</a>
</li>
<li class="md-nav__item">
<a href="../../chapter_searching/replace_linear_by_hashing/" class="md-nav__link">
12.2. &nbsp; 哈希优化策略
</a>
</li>
<li class="md-nav__item">
<a href="../../chapter_searching/summary/" class="md-nav__link">
12.3. &nbsp; 小结
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_14" >
<label class="md-nav__link" for="__nav_14" id="__nav_14_label" tabindex="0">
13. &nbsp; &nbsp; 回溯算法
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_14_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_14">
<span class="md-nav__icon md-icon"></span>
13. &nbsp; &nbsp; 回溯算法
</label>
<ul class="md-nav__list" data-md-scrollfix>
@@ -1550,7 +1573,7 @@
<li class="md-nav__item">
<a href="../../chapter_backtracking/backtracking_algorithm/" class="md-nav__link">
12.1. &nbsp; 回溯算法New
13.1. &nbsp; 回溯算法New
</a>
</li>
@@ -1580,7 +1603,7 @@
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_14" checked>
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_15" checked>
@@ -1590,15 +1613,15 @@
<label class="md-nav__link" for="__nav_14" id="__nav_14_label" tabindex="0">
13. &nbsp; &nbsp; 附录
<label class="md-nav__link" for="__nav_15" id="__nav_15_label" tabindex="0">
14. &nbsp; &nbsp; 附录
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_14_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_14">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_15_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_15">
<span class="md-nav__icon md-icon"></span>
13. &nbsp; &nbsp; 附录
14. &nbsp; &nbsp; 附录
</label>
<ul class="md-nav__list" data-md-scrollfix>
@@ -1609,7 +1632,7 @@
<li class="md-nav__item">
<a href="../installation/" class="md-nav__link">
13.1. &nbsp; 编程环境安装
14.1. &nbsp; 编程环境安装
</a>
</li>
@@ -1632,12 +1655,12 @@
<label class="md-nav__link md-nav__link--active" for="__toc">
13.2. &nbsp; 一起参与创作
14.2. &nbsp; 一起参与创作
<span class="md-nav__icon md-icon"></span>
</label>
<a href="./" class="md-nav__link md-nav__link--active">
13.2. &nbsp; 一起参与创作
14.2. &nbsp; 一起参与创作
</a>
@@ -1656,22 +1679,22 @@
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#1321" class="md-nav__link">
13.2.1. &nbsp; 内容微调
<a href="#1421" class="md-nav__link">
14.2.1. &nbsp; 内容微调
</a>
</li>
<li class="md-nav__item">
<a href="#1322" class="md-nav__link">
13.2.2. &nbsp; 内容创作
<a href="#1422" class="md-nav__link">
14.2.2. &nbsp; 内容创作
</a>
</li>
<li class="md-nav__item">
<a href="#1323-docker" class="md-nav__link">
13.2.3. &nbsp; Docker 部署
<a href="#1423-docker" class="md-nav__link">
14.2.3. &nbsp; Docker 部署
</a>
</li>
@@ -1706,7 +1729,7 @@
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_15" >
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_16" >
@@ -1723,8 +1746,8 @@
</div>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_15_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_15">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_16_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_16">
<span class="md-nav__icon md-icon"></span>
参考文献
</label>
@@ -1765,22 +1788,22 @@
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#1321" class="md-nav__link">
13.2.1. &nbsp; 内容微调
<a href="#1421" class="md-nav__link">
14.2.1. &nbsp; 内容微调
</a>
</li>
<li class="md-nav__item">
<a href="#1322" class="md-nav__link">
13.2.2. &nbsp; 内容创作
<a href="#1422" class="md-nav__link">
14.2.2. &nbsp; 内容创作
</a>
</li>
<li class="md-nav__item">
<a href="#1323-docker" class="md-nav__link">
13.2.3. &nbsp; Docker 部署
<a href="#1423-docker" class="md-nav__link">
14.2.3. &nbsp; Docker 部署
</a>
</li>
@@ -1808,13 +1831,13 @@
<h1 id="132">13.2. &nbsp; 一起参与创作<a class="headerlink" href="#132" title="Permanent link">&para;</a></h1>
<h1 id="142">14.2. &nbsp; 一起参与创作<a class="headerlink" href="#142" title="Permanent link">&para;</a></h1>
<div class="admonition success">
<p class="admonition-title">开源的魅力</p>
<p>纸质书籍的两次印刷的间隔时间往往需要数年,内容更新非常不方便。</br>但在本开源书中,内容更迭的时间被缩短至数日甚至几个小时。</p>
</div>
<p>由于作者能力有限,书中难免存在一些遗漏和错误,请您谅解。如果您发现了笔误、失效链接、内容缺失、文字歧义、解释不清晰或行文结构不合理等问题,请协助我们进行修正,以帮助其他读者获得更优质的学习资源。所有<a href="https://github.com/krahets/hello-algo/graphs/contributors">撰稿人</a>将在仓库和网站主页上展示,以感谢他们对开源社区的无私奉献!</p>
<h2 id="1321">13.2.1. &nbsp; 内容微调<a class="headerlink" href="#1321" title="Permanent link">&para;</a></h2>
<h2 id="1421">14.2.1. &nbsp; 内容微调<a class="headerlink" href="#1421" title="Permanent link">&para;</a></h2>
<p>在每个页面的右上角有一个「编辑」图标,您可以按照以下步骤修改文本或代码:</p>
<ol>
<li>点击编辑按钮,如果遇到“需要 Fork 此仓库”的提示,请同意该操作;</li>
@@ -1825,7 +1848,7 @@
<p align="center"> Fig. 页面编辑按键 </p>
<p>由于图片无法直接修改,因此需要通过新建 <a href="https://github.com/krahets/hello-algo/issues">Issue</a> 或评论留言来描述图片问题,我们会尽快重新绘制并替换图片。</p>
<h2 id="1322">13.2.2. &nbsp; 内容创作<a class="headerlink" href="#1322" title="Permanent link">&para;</a></h2>
<h2 id="1422">14.2.2. &nbsp; 内容创作<a class="headerlink" href="#1422" title="Permanent link">&para;</a></h2>
<p>如果您有兴趣参与此开源项目,包括将代码翻译成其他编程语言、扩展文章内容等,那么需要实施 Pull Request 工作流程:</p>
<ol>
<li>登录 GitHub ,将<a href="https://github.com/krahets/hello-algo">本仓库</a> Fork 到个人账号下;</li>
@@ -1834,7 +1857,7 @@
<li>将本地所做更改 Commit ,然后 Push 至远程仓库;</li>
<li>刷新仓库网页点击“Create pull request”按钮即可发起拉取请求</li>
</ol>
<h2 id="1323-docker">13.2.3. &nbsp; Docker 部署<a class="headerlink" href="#1323-docker" title="Permanent link">&para;</a></h2>
<h2 id="1423-docker">14.2.3. &nbsp; Docker 部署<a class="headerlink" href="#1423-docker" title="Permanent link">&para;</a></h2>
<p>我们可以通过 Docker 来部署本项目。执行以下脚本,稍等片刻后,即可使用浏览器打开 <code>http://localhost:8000</code> 来访问本项目。</p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-0-1" name="__codelineno-0-1" href="#__codelineno-0-1"></a>git<span class="w"> </span>clone<span class="w"> </span>https://github.com/krahets/hello-algo.git
<a id="__codelineno-0-2" name="__codelineno-0-2" href="#__codelineno-0-2"></a><span class="nb">cd</span><span class="w"> </span>hello-algo
@@ -1920,7 +1943,7 @@
<nav class="md-footer__inner md-grid" aria-label="页脚" >
<a href="../installation/" class="md-footer__link md-footer__link--prev" aria-label="上一页: 13.1. &amp;nbsp; 编程环境安装" rel="prev">
<a href="../installation/" class="md-footer__link md-footer__link--prev" aria-label="上一页: 14.1. &amp;nbsp; 编程环境安装" rel="prev">
<div class="md-footer__button md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12Z"/></svg>
</div>
@@ -1929,7 +1952,7 @@
上一页
</span>
<div class="md-ellipsis">
13.1. &nbsp; 编程环境安装
14.1. &nbsp; 编程环境安装
</div>
</div>
</a>

View File

@@ -25,7 +25,7 @@
<title>13.1.   编程环境安装 - Hello 算法</title>
<title>14.1.   编程环境安装 - Hello 算法</title>
@@ -79,7 +79,7 @@
<div data-md-component="skip">
<a href="#131" class="md-skip">
<a href="#141" class="md-skip">
跳转至
</a>
@@ -113,7 +113,7 @@
<div class="md-header__topic" data-md-component="header-topic">
<span class="md-ellipsis">
13.1. &nbsp; 编程环境安装
14.1. &nbsp; 编程环境安装
</span>
</div>
@@ -441,8 +441,6 @@
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
@@ -504,23 +502,9 @@
<li class="md-nav__item">
<a href="../../chapter_computational_complexity/space_time_tradeoff/" class="md-nav__link">
2.4. &nbsp; 权衡时间与空间
</a>
</li>
<li class="md-nav__item">
<a href="../../chapter_computational_complexity/summary/" class="md-nav__link">
2.5. &nbsp; 小结
2.4. &nbsp; 小结
</a>
</li>
@@ -847,21 +831,17 @@
<label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="0">
6. &nbsp; &nbsp; 散列表
6. &nbsp; &nbsp; 二分查找
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_7">
<span class="md-nav__icon md-icon"></span>
6. &nbsp; &nbsp; 散列表
6. &nbsp; &nbsp; 二分查找
</label>
<ul class="md-nav__list" data-md-scrollfix>
@@ -871,36 +851,8 @@
<li class="md-nav__item">
<a href="../../chapter_hashing/hash_map/" class="md-nav__link">
6.1. &nbsp; 哈希表
</a>
</li>
<li class="md-nav__item">
<a href="../../chapter_hashing/hash_collision/" class="md-nav__link">
6.2. &nbsp; 哈希冲突处理
</a>
</li>
<li class="md-nav__item">
<a href="../../chapter_hashing/summary/" class="md-nav__link">
6.3. &nbsp; 小结
<a href="../../chapter_binary_search/binary_search/" class="md-nav__link">
6.1. &nbsp; 二分查找
</a>
</li>
@@ -938,21 +890,17 @@
<label class="md-nav__link" for="__nav_8" id="__nav_8_label" tabindex="0">
7. &nbsp; &nbsp;
7. &nbsp; &nbsp; 散列表
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_8_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_8">
<span class="md-nav__icon md-icon"></span>
7. &nbsp; &nbsp;
7. &nbsp; &nbsp; 散列表
</label>
<ul class="md-nav__list" data-md-scrollfix>
@@ -962,8 +910,8 @@
<li class="md-nav__item">
<a href="../../chapter_tree/binary_tree/" class="md-nav__link">
7.1. &nbsp; 二叉树
<a href="../../chapter_hashing/hash_map/" class="md-nav__link">
7.1. &nbsp; 哈希表
</a>
</li>
@@ -976,8 +924,8 @@
<li class="md-nav__item">
<a href="../../chapter_tree/binary_tree_traversal/" class="md-nav__link">
7.2. &nbsp; 二叉树遍历
<a href="../../chapter_hashing/hash_collision/" class="md-nav__link">
7.2. &nbsp; 哈希冲突处理
</a>
</li>
@@ -990,36 +938,8 @@
<li class="md-nav__item">
<a href="../../chapter_tree/binary_search_tree/" class="md-nav__link">
7.3. &nbsp; 二叉搜索树
</a>
</li>
<li class="md-nav__item">
<a href="../../chapter_tree/avl_tree/" class="md-nav__link">
7.4. &nbsp; AVL 树 *
</a>
</li>
<li class="md-nav__item">
<a href="../../chapter_tree/summary/" class="md-nav__link">
7.5. &nbsp; 小结
<a href="../../chapter_hashing/summary/" class="md-nav__link">
7.3. &nbsp; 小结
</a>
</li>
@@ -1057,17 +977,21 @@
<label class="md-nav__link" for="__nav_9" id="__nav_9_label" tabindex="0">
8. &nbsp; &nbsp;
8. &nbsp; &nbsp;
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_9_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_9">
<span class="md-nav__icon md-icon"></span>
8. &nbsp; &nbsp;
8. &nbsp; &nbsp;
</label>
<ul class="md-nav__list" data-md-scrollfix>
@@ -1077,8 +1001,8 @@
<li class="md-nav__item">
<a href="../../chapter_heap/heap/" class="md-nav__link">
8.1. &nbsp;
<a href="../../chapter_tree/binary_tree/" class="md-nav__link">
8.1. &nbsp; 二叉树
</a>
</li>
@@ -1091,8 +1015,8 @@
<li class="md-nav__item">
<a href="../../chapter_heap/build_heap/" class="md-nav__link">
8.2. &nbsp; 建堆操作 *
<a href="../../chapter_tree/binary_tree_traversal/" class="md-nav__link">
8.2. &nbsp; 二叉树遍历
</a>
</li>
@@ -1105,8 +1029,36 @@
<li class="md-nav__item">
<a href="../../chapter_heap/summary/" class="md-nav__link">
8.3. &nbsp; 小结
<a href="../../chapter_tree/binary_search_tree/" class="md-nav__link">
8.3. &nbsp; 二叉搜索树
</a>
</li>
<li class="md-nav__item">
<a href="../../chapter_tree/avl_tree/" class="md-nav__link">
8.4. &nbsp; AVL 树 *
</a>
</li>
<li class="md-nav__item">
<a href="../../chapter_tree/summary/" class="md-nav__link">
8.5. &nbsp; 小结
</a>
</li>
@@ -1144,19 +1096,17 @@
<label class="md-nav__link" for="__nav_10" id="__nav_10_label" tabindex="0">
9. &nbsp; &nbsp;
9. &nbsp; &nbsp;
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_10_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_10">
<span class="md-nav__icon md-icon"></span>
9. &nbsp; &nbsp;
9. &nbsp; &nbsp;
</label>
<ul class="md-nav__list" data-md-scrollfix>
@@ -1166,8 +1116,8 @@
<li class="md-nav__item">
<a href="../../chapter_graph/graph/" class="md-nav__link">
9.1. &nbsp;
<a href="../../chapter_heap/heap/" class="md-nav__link">
9.1. &nbsp;
</a>
</li>
@@ -1180,8 +1130,8 @@
<li class="md-nav__item">
<a href="../../chapter_graph/graph_operations/" class="md-nav__link">
9.2. &nbsp; 图基础操作
<a href="../../chapter_heap/build_heap/" class="md-nav__link">
9.2. &nbsp; 建堆操作 *
</a>
</li>
@@ -1194,22 +1144,8 @@
<li class="md-nav__item">
<a href="../../chapter_graph/graph_traversal/" class="md-nav__link">
9.3. &nbsp; 图的遍历
</a>
</li>
<li class="md-nav__item">
<a href="../../chapter_graph/summary/" class="md-nav__link">
9.4. &nbsp; 小结
<a href="../../chapter_heap/summary/" class="md-nav__link">
9.3. &nbsp; 小结
</a>
</li>
@@ -1252,14 +1188,14 @@
<label class="md-nav__link" for="__nav_11" id="__nav_11_label" tabindex="0">
10. &nbsp; &nbsp; 查找算法
10. &nbsp; &nbsp;
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_11_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_11">
<span class="md-nav__icon md-icon"></span>
10. &nbsp; &nbsp; 查找算法
10. &nbsp; &nbsp;
</label>
<ul class="md-nav__list" data-md-scrollfix>
@@ -1269,8 +1205,8 @@
<li class="md-nav__item">
<a href="../../chapter_searching/linear_search/" class="md-nav__link">
10.1. &nbsp; 线性查找
<a href="../../chapter_graph/graph/" class="md-nav__link">
10.1. &nbsp;
</a>
</li>
@@ -1283,8 +1219,8 @@
<li class="md-nav__item">
<a href="../../chapter_searching/binary_search/" class="md-nav__link">
10.2. &nbsp; 二分查找
<a href="../../chapter_graph/graph_operations/" class="md-nav__link">
10.2. &nbsp; 图基础操作
</a>
</li>
@@ -1297,8 +1233,8 @@
<li class="md-nav__item">
<a href="../../chapter_searching/hashing_search/" class="md-nav__link">
10.3. &nbsp; 哈希查找
<a href="../../chapter_graph/graph_traversal/" class="md-nav__link">
10.3. &nbsp; 图的遍历
</a>
</li>
@@ -1311,7 +1247,7 @@
<li class="md-nav__item">
<a href="../../chapter_searching/summary/" class="md-nav__link">
<a href="../../chapter_graph/summary/" class="md-nav__link">
10.4. &nbsp; 小结
</a>
</li>
@@ -1453,7 +1389,7 @@
<li class="md-nav__item">
<a href="../../chapter_sorting/bucket_sort/" class="md-nav__link">
11.6. &nbsp; 桶排序New
11.6. &nbsp; 桶排序
</a>
</li>
@@ -1467,7 +1403,7 @@
<li class="md-nav__item">
<a href="../../chapter_sorting/counting_sort/" class="md-nav__link">
11.7. &nbsp; 计数排序New
11.7. &nbsp; 计数排序
</a>
</li>
@@ -1481,7 +1417,7 @@
<li class="md-nav__item">
<a href="../../chapter_sorting/radix_sort/" class="md-nav__link">
11.8. &nbsp; 基数排序New
11.8. &nbsp; 基数排序
</a>
</li>
@@ -1529,17 +1465,104 @@
<label class="md-nav__link" for="__nav_13" id="__nav_13_label" tabindex="0">
12. &nbsp; &nbsp; 回溯算法
12. &nbsp; &nbsp; 搜索算法
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_13_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_13">
<span class="md-nav__icon md-icon"></span>
12. &nbsp; &nbsp; 回溯算法
12. &nbsp; &nbsp; 搜索算法
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../chapter_searching/searching_algorithm_revisited/" class="md-nav__link">
12.1. &nbsp; 搜索算法New
</a>
</li>
<li class="md-nav__item">
<a href="../../chapter_searching/replace_linear_by_hashing/" class="md-nav__link">
12.2. &nbsp; 哈希优化策略
</a>
</li>
<li class="md-nav__item">
<a href="../../chapter_searching/summary/" class="md-nav__link">
12.3. &nbsp; 小结
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_14" >
<label class="md-nav__link" for="__nav_14" id="__nav_14_label" tabindex="0">
13. &nbsp; &nbsp; 回溯算法
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_14_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_14">
<span class="md-nav__icon md-icon"></span>
13. &nbsp; &nbsp; 回溯算法
</label>
<ul class="md-nav__list" data-md-scrollfix>
@@ -1550,7 +1573,7 @@
<li class="md-nav__item">
<a href="../../chapter_backtracking/backtracking_algorithm/" class="md-nav__link">
12.1. &nbsp; 回溯算法New
13.1. &nbsp; 回溯算法New
</a>
</li>
@@ -1580,7 +1603,7 @@
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_14" checked>
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_15" checked>
@@ -1590,15 +1613,15 @@
<label class="md-nav__link" for="__nav_14" id="__nav_14_label" tabindex="0">
13. &nbsp; &nbsp; 附录
<label class="md-nav__link" for="__nav_15" id="__nav_15_label" tabindex="0">
14. &nbsp; &nbsp; 附录
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_14_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_14">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_15_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_15">
<span class="md-nav__icon md-icon"></span>
13. &nbsp; &nbsp; 附录
14. &nbsp; &nbsp; 附录
</label>
<ul class="md-nav__list" data-md-scrollfix>
@@ -1618,12 +1641,12 @@
<label class="md-nav__link md-nav__link--active" for="__toc">
13.1. &nbsp; 编程环境安装
14.1. &nbsp; 编程环境安装
<span class="md-nav__icon md-icon"></span>
</label>
<a href="./" class="md-nav__link md-nav__link--active">
13.1. &nbsp; 编程环境安装
14.1. &nbsp; 编程环境安装
</a>
@@ -1642,64 +1665,64 @@
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#1311-vscode" class="md-nav__link">
13.1.1. &nbsp; 安装 VSCode
<a href="#1411-vscode" class="md-nav__link">
14.1.1. &nbsp; 安装 VSCode
</a>
</li>
<li class="md-nav__item">
<a href="#1312-java" class="md-nav__link">
13.1.2. &nbsp; Java 环境
<a href="#1412-java" class="md-nav__link">
14.1.2. &nbsp; Java 环境
</a>
</li>
<li class="md-nav__item">
<a href="#1313-cc" class="md-nav__link">
13.1.3. &nbsp; C/C++ 环境
<a href="#1413-cc" class="md-nav__link">
14.1.3. &nbsp; C/C++ 环境
</a>
</li>
<li class="md-nav__item">
<a href="#1314-python" class="md-nav__link">
13.1.4. &nbsp; Python 环境
<a href="#1414-python" class="md-nav__link">
14.1.4. &nbsp; Python 环境
</a>
</li>
<li class="md-nav__item">
<a href="#1315-go" class="md-nav__link">
13.1.5. &nbsp; Go 环境
<a href="#1415-go" class="md-nav__link">
14.1.5. &nbsp; Go 环境
</a>
</li>
<li class="md-nav__item">
<a href="#1316-javascript" class="md-nav__link">
13.1.6. &nbsp; JavaScript 环境
<a href="#1416-javascript" class="md-nav__link">
14.1.6. &nbsp; JavaScript 环境
</a>
</li>
<li class="md-nav__item">
<a href="#1317-c" class="md-nav__link">
13.1.7. &nbsp; C# 环境
<a href="#1417-c" class="md-nav__link">
14.1.7. &nbsp; C# 环境
</a>
</li>
<li class="md-nav__item">
<a href="#1318-swift" class="md-nav__link">
13.1.8. &nbsp; Swift 环境
<a href="#1418-swift" class="md-nav__link">
14.1.8. &nbsp; Swift 环境
</a>
</li>
<li class="md-nav__item">
<a href="#1319-rust" class="md-nav__link">
13.1.9. &nbsp; Rust 环境
<a href="#1419-rust" class="md-nav__link">
14.1.9. &nbsp; Rust 环境
</a>
</li>
@@ -1720,7 +1743,7 @@
<li class="md-nav__item">
<a href="../contribution/" class="md-nav__link">
13.2. &nbsp; 一起参与创作
14.2. &nbsp; 一起参与创作
</a>
</li>
@@ -1748,7 +1771,7 @@
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_15" >
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_16" >
@@ -1765,8 +1788,8 @@
</div>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_15_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_15">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_16_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_16">
<span class="md-nav__icon md-icon"></span>
参考文献
</label>
@@ -1807,64 +1830,64 @@
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#1311-vscode" class="md-nav__link">
13.1.1. &nbsp; 安装 VSCode
<a href="#1411-vscode" class="md-nav__link">
14.1.1. &nbsp; 安装 VSCode
</a>
</li>
<li class="md-nav__item">
<a href="#1312-java" class="md-nav__link">
13.1.2. &nbsp; Java 环境
<a href="#1412-java" class="md-nav__link">
14.1.2. &nbsp; Java 环境
</a>
</li>
<li class="md-nav__item">
<a href="#1313-cc" class="md-nav__link">
13.1.3. &nbsp; C/C++ 环境
<a href="#1413-cc" class="md-nav__link">
14.1.3. &nbsp; C/C++ 环境
</a>
</li>
<li class="md-nav__item">
<a href="#1314-python" class="md-nav__link">
13.1.4. &nbsp; Python 环境
<a href="#1414-python" class="md-nav__link">
14.1.4. &nbsp; Python 环境
</a>
</li>
<li class="md-nav__item">
<a href="#1315-go" class="md-nav__link">
13.1.5. &nbsp; Go 环境
<a href="#1415-go" class="md-nav__link">
14.1.5. &nbsp; Go 环境
</a>
</li>
<li class="md-nav__item">
<a href="#1316-javascript" class="md-nav__link">
13.1.6. &nbsp; JavaScript 环境
<a href="#1416-javascript" class="md-nav__link">
14.1.6. &nbsp; JavaScript 环境
</a>
</li>
<li class="md-nav__item">
<a href="#1317-c" class="md-nav__link">
13.1.7. &nbsp; C# 环境
<a href="#1417-c" class="md-nav__link">
14.1.7. &nbsp; C# 环境
</a>
</li>
<li class="md-nav__item">
<a href="#1318-swift" class="md-nav__link">
13.1.8. &nbsp; Swift 环境
<a href="#1418-swift" class="md-nav__link">
14.1.8. &nbsp; Swift 环境
</a>
</li>
<li class="md-nav__item">
<a href="#1319-rust" class="md-nav__link">
13.1.9. &nbsp; Rust 环境
<a href="#1419-rust" class="md-nav__link">
14.1.9. &nbsp; Rust 环境
</a>
</li>
@@ -1892,46 +1915,46 @@
<h1 id="131">13.1. &nbsp; 编程环境安装<a class="headerlink" href="#131" title="Permanent link">&para;</a></h1>
<h2 id="1311-vscode">13.1.1. &nbsp; 安装 VSCode<a class="headerlink" href="#1311-vscode" title="Permanent link">&para;</a></h2>
<h1 id="141">14.1. &nbsp; 编程环境安装<a class="headerlink" href="#141" title="Permanent link">&para;</a></h1>
<h2 id="1411-vscode">14.1.1. &nbsp; 安装 VSCode<a class="headerlink" href="#1411-vscode" title="Permanent link">&para;</a></h2>
<p>本书推荐使用开源轻量的 VSCode 作为本地 IDE ,下载并安装 <a href="https://code.visualstudio.com/">VSCode</a></p>
<h2 id="1312-java">13.1.2. &nbsp; Java 环境<a class="headerlink" href="#1312-java" title="Permanent link">&para;</a></h2>
<h2 id="1412-java">14.1.2. &nbsp; Java 环境<a class="headerlink" href="#1412-java" title="Permanent link">&para;</a></h2>
<ol>
<li>下载并安装 <a href="https://jdk.java.net/18/">OpenJDK</a>(版本需满足 &gt; JDK 9</li>
<li>在 VSCode 的插件市场中搜索 <code>java</code> ,安装 Java Extension Pack 。</li>
</ol>
<h2 id="1313-cc">13.1.3. &nbsp; C/C++ 环境<a class="headerlink" href="#1313-cc" title="Permanent link">&para;</a></h2>
<h2 id="1413-cc">14.1.3. &nbsp; C/C++ 环境<a class="headerlink" href="#1413-cc" title="Permanent link">&para;</a></h2>
<ol>
<li>Windows 系统需要安装 <a href="https://sourceforge.net/projects/mingw-w64/files/">MinGW</a><a href="https://blog.csdn.net/qq_33698226/article/details/129031241">配置教程</a>MacOS 自带 Clang 无需安装。</li>
<li>在 VSCode 的插件市场中搜索 <code>c++</code> ,安装 C/C++ Extension Pack 。</li>
</ol>
<h2 id="1314-python">13.1.4. &nbsp; Python 环境<a class="headerlink" href="#1314-python" title="Permanent link">&para;</a></h2>
<h2 id="1414-python">14.1.4. &nbsp; Python 环境<a class="headerlink" href="#1414-python" title="Permanent link">&para;</a></h2>
<ol>
<li>下载并安装 <a href="https://docs.conda.io/en/latest/miniconda.html">Miniconda3</a></li>
<li>在 VSCode 的插件市场中搜索 <code>python</code> ,安装 Python Extension Pack 。</li>
</ol>
<h2 id="1315-go">13.1.5. &nbsp; Go 环境<a class="headerlink" href="#1315-go" title="Permanent link">&para;</a></h2>
<h2 id="1415-go">14.1.5. &nbsp; Go 环境<a class="headerlink" href="#1415-go" title="Permanent link">&para;</a></h2>
<ol>
<li>下载并安装 <a href="https://go.dev/dl/">go</a></li>
<li>在 VSCode 的插件市场中搜索 <code>go</code> ,安装 Go 。</li>
<li>快捷键 <code>Ctrl + Shift + P</code> 呼出命令栏,输入 go ,选择 <code>Go: Install/Update Tools</code> ,全部勾选并安装即可。</li>
</ol>
<h2 id="1316-javascript">13.1.6. &nbsp; JavaScript 环境<a class="headerlink" href="#1316-javascript" title="Permanent link">&para;</a></h2>
<h2 id="1416-javascript">14.1.6. &nbsp; JavaScript 环境<a class="headerlink" href="#1416-javascript" title="Permanent link">&para;</a></h2>
<ol>
<li>下载并安装 <a href="https://nodejs.org/en/">node.js</a></li>
<li>在 VSCode 的插件市场中搜索 <code>javascript</code> ,安装 JavaScript (ES6) code snippets 。</li>
</ol>
<h2 id="1317-c">13.1.7. &nbsp; C# 环境<a class="headerlink" href="#1317-c" title="Permanent link">&para;</a></h2>
<h2 id="1417-c">14.1.7. &nbsp; C# 环境<a class="headerlink" href="#1417-c" title="Permanent link">&para;</a></h2>
<ol>
<li>下载并安装 <a href="https://dotnet.microsoft.com/en-us/download">.Net 6.0</a> </li>
<li>在 VSCode 的插件市场中搜索 <code>c#</code> ,安装 c# 。</li>
</ol>
<h2 id="1318-swift">13.1.8. &nbsp; Swift 环境<a class="headerlink" href="#1318-swift" title="Permanent link">&para;</a></h2>
<h2 id="1418-swift">14.1.8. &nbsp; Swift 环境<a class="headerlink" href="#1418-swift" title="Permanent link">&para;</a></h2>
<ol>
<li>下载并安装 <a href="https://www.swift.org/download/">Swift</a></li>
<li>在 VSCode 的插件市场中搜索 <code>swift</code> ,安装 <a href="https://marketplace.visualstudio.com/items?itemName=sswg.swift-lang">Swift for Visual Studio Code</a></li>
</ol>
<h2 id="1319-rust">13.1.9. &nbsp; Rust 环境<a class="headerlink" href="#1319-rust" title="Permanent link">&para;</a></h2>
<h2 id="1419-rust">14.1.9. &nbsp; Rust 环境<a class="headerlink" href="#1419-rust" title="Permanent link">&para;</a></h2>
<ol>
<li>下载并安装 <a href="https://www.rust-lang.org/tools/install">Rust</a></li>
<li>在 VSCode 的插件市场中搜索 <code>rust</code> ,安装 <a href="https://marketplace.visualstudio.com/items?itemName=rust-lang.rust-analyzer">rust-analyzer</a></li>
@@ -2013,7 +2036,7 @@
<nav class="md-footer__inner md-grid" aria-label="页脚" >
<a href="../../chapter_backtracking/backtracking_algorithm/" class="md-footer__link md-footer__link--prev" aria-label="上一页: 12.1. &amp;nbsp; 回溯算法New" rel="prev">
<a href="../../chapter_backtracking/backtracking_algorithm/" class="md-footer__link md-footer__link--prev" aria-label="上一页: 13.1. &amp;nbsp; 回溯算法New" rel="prev">
<div class="md-footer__button md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12Z"/></svg>
</div>
@@ -2022,20 +2045,20 @@
上一页
</span>
<div class="md-ellipsis">
12.1. &nbsp; 回溯算法New
13.1. &nbsp; 回溯算法New
</div>
</div>
</a>
<a href="../contribution/" class="md-footer__link md-footer__link--next" aria-label="下一页: 13.2. &amp;nbsp; 一起参与创作" rel="next">
<a href="../contribution/" class="md-footer__link md-footer__link--next" aria-label="下一页: 14.2. &amp;nbsp; 一起参与创作" rel="next">
<div class="md-footer__title">
<span class="md-footer__direction">
下一页
</span>
<div class="md-ellipsis">
13.2. &nbsp; 一起参与创作
14.2. &nbsp; 一起参与创作
</div>
</div>
<div class="md-footer__button md-icon">