Several bug fixes and improvements (#991)

* Several bug fixes.

* Update index.md
pull/992/head
Yudong Jin 11 months ago committed by GitHub
parent 54b1ac8638
commit 406eed82a3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -2,62 +2,62 @@
## 安装 IDE ## 安装 IDE
推荐使用开源、轻量的 VSCode 作为本地集成开发环境IDE。访问 [VSCode 官网](https://code.visualstudio.com/),根据操作系统选择相应版本的 VSCode 进行下载和安装。 推荐使用开源、轻量的 VS Code 作为本地集成开发环境IDE。访问 [VS Code 官网](https://code.visualstudio.com/),根据操作系统选择相应版本的 VS Code 进行下载和安装。
![从官网下载 VSCode](installation.assets/vscode_installation.png) ![从官网下载 VS Code](installation.assets/vscode_installation.png)
VSCode 拥有强大的扩展包生态系统,支持大多数编程语言的运行和调试。以 Python 为例安装“Python Extension Pack”扩展包之后即可进行 Python 代码调试。安装步骤如下图所示。 VS Code 拥有强大的扩展包生态系统,支持大多数编程语言的运行和调试。以 Python 为例安装“Python Extension Pack”扩展包之后即可进行 Python 代码调试。安装步骤如下图所示。
![安装 VSCode 扩展包](installation.assets/vscode_extension_installation.png) ![安装 VS Code 扩展包](installation.assets/vscode_extension_installation.png)
## 安装语言环境 ## 安装语言环境
### Python 环境 ### Python 环境
1. 下载并安装 [Miniconda3](https://docs.conda.io/en/latest/miniconda.html) ,需要 Python 3.10 或更新版本。 1. 下载并安装 [Miniconda3](https://docs.conda.io/en/latest/miniconda.html) ,需要 Python 3.10 或更新版本。
2. 在 VSCode 的插件市场中搜索 `python` ,安装 Python Extension Pack 。 2. 在 VS Code 的插件市场中搜索 `python` ,安装 Python Extension Pack 。
3. (可选)在命令行输入 `pip install black` ,安装代码格式化工具。 3. (可选)在命令行输入 `pip install black` ,安装代码格式化工具。
### C/C++ 环境 ### C/C++ 环境
1. Windows 系统需要安装 [MinGW](https://sourceforge.net/projects/mingw-w64/files/)[配置教程](https://blog.csdn.net/qq_33698226/article/details/129031241)MacOS 自带 Clang ,无须安装。 1. Windows 系统需要安装 [MinGW](https://sourceforge.net/projects/mingw-w64/files/)[配置教程](https://blog.csdn.net/qq_33698226/article/details/129031241)MacOS 自带 Clang ,无须安装。
2. 在 VSCode 的插件市场中搜索 `c++` ,安装 C/C++ Extension Pack 。 2. 在 VS Code 的插件市场中搜索 `c++` ,安装 C/C++ Extension Pack 。
3. (可选)打开 Settings 页面,搜索 `Clang_format_fallback Style` 代码格式化选项,设置为 `{ BasedOnStyle: Microsoft, BreakBeforeBraces: Attach }` 3. (可选)打开 Settings 页面,搜索 `Clang_format_fallback Style` 代码格式化选项,设置为 `{ BasedOnStyle: Microsoft, BreakBeforeBraces: Attach }`
### Java 环境 ### Java 环境
1. 下载并安装 [OpenJDK](https://jdk.java.net/18/)(版本需满足 > JDK 9 1. 下载并安装 [OpenJDK](https://jdk.java.net/18/)(版本需满足 > JDK 9
2. 在 VSCode 的插件市场中搜索 `java` ,安装 Extension Pack for Java 。 2. 在 VS Code 的插件市场中搜索 `java` ,安装 Extension Pack for Java 。
### C# 环境 ### C# 环境
1. 下载并安装 [.Net 8.0](https://dotnet.microsoft.com/en-us/download) 。 1. 下载并安装 [.Net 8.0](https://dotnet.microsoft.com/en-us/download) 。
2. 在 VSCode 的插件市场中搜索 `C# Dev Kit` ,安装 C# Dev Kit [配置教程](https://code.visualstudio.com/docs/csharp/get-started))。 2. 在 VS Code 的插件市场中搜索 `C# Dev Kit` ,安装 C# Dev Kit [配置教程](https://code.visualstudio.com/docs/csharp/get-started))。
3. 也可使用 Visual Studio[安装教程](https://learn.microsoft.com/zh-cn/visualstudio/install/install-visual-studio?view=vs-2022))。 3. 也可使用 Visual Studio[安装教程](https://learn.microsoft.com/zh-cn/visualstudio/install/install-visual-studio?view=vs-2022))。
### Go 环境 ### Go 环境
1. 下载并安装 [go](https://go.dev/dl/) 。 1. 下载并安装 [go](https://go.dev/dl/) 。
2. 在 VSCode 的插件市场中搜索 `go` ,安装 Go 。 2. 在 VS Code 的插件市场中搜索 `go` ,安装 Go 。
3. 按快捷键 `Ctrl + Shift + P` 呼出命令栏,输入 go ,选择 `Go: Install/Update Tools` ,全部勾选并安装即可。 3. 按快捷键 `Ctrl + Shift + P` 呼出命令栏,输入 go ,选择 `Go: Install/Update Tools` ,全部勾选并安装即可。
### Swift 环境 ### Swift 环境
1. 下载并安装 [Swift](https://www.swift.org/download/) 。 1. 下载并安装 [Swift](https://www.swift.org/download/) 。
2. 在 VSCode 的插件市场中搜索 `swift` ,安装 [Swift for Visual Studio Code](https://marketplace.visualstudio.com/items?itemName=sswg.swift-lang) 。 2. 在 VS Code 的插件市场中搜索 `swift` ,安装 [Swift for Visual Studio Code](https://marketplace.visualstudio.com/items?itemName=sswg.swift-lang) 。
### JavaScript 环境 ### JavaScript 环境
1. 下载并安装 [node.js](https://nodejs.org/en/) 。 1. 下载并安装 [node.js](https://nodejs.org/en/) 。
2. 在 VSCode 的插件市场中搜索 `javascript` ,安装 JavaScript (ES6) code snippets 。 2. 在 VS Code 的插件市场中搜索 `javascript` ,安装 JavaScript (ES6) code snippets 。
3. (可选)在 VSCode 的插件市场中搜索 `Prettier` ,安装代码格式化工具。 3. (可选)在 VS Code 的插件市场中搜索 `Prettier` ,安装代码格式化工具。
### Dart 环境 ### Dart 环境
1. 下载并安装 [Dart](https://dart.dev/get-dart) 。 1. 下载并安装 [Dart](https://dart.dev/get-dart) 。
2. 在 VSCode 的插件市场中搜索 `dart` ,安装 [Dart](https://marketplace.visualstudio.com/items?itemName=Dart-Code.dart-code) 。 2. 在 VS Code 的插件市场中搜索 `dart` ,安装 [Dart](https://marketplace.visualstudio.com/items?itemName=Dart-Code.dart-code) 。
### Rust 环境 ### Rust 环境
1. 下载并安装 [Rust](https://www.rust-lang.org/tools/install) 。 1. 下载并安装 [Rust](https://www.rust-lang.org/tools/install) 。
2. 在 VSCode 的插件市场中搜索 `rust` ,安装 [rust-analyzer](https://marketplace.visualstudio.com/items?itemName=rust-lang.rust-analyzer) 。 2. 在 VS Code 的插件市场中搜索 `rust` ,安装 [rust-analyzer](https://marketplace.visualstudio.com/items?itemName=rust-lang.rust-analyzer) 。

@ -15,8 +15,7 @@
| 递归 | recursion | 堆 | heap | | 递归 | recursion | 堆 | heap |
| 尾递归 | tail recursion | 大顶堆 | max heap | | 尾递归 | tail recursion | 大顶堆 | max heap |
| 递归树 | recursion tree | 小顶堆 | min heap | | 递归树 | recursion tree | 小顶堆 | min heap |
| 大 | big- | 优先队列 | priority queue | | 大 $O$ 记号 | big-$O$ notation | 优先队列 | priority queue |
| 记号 | notation | | |
| 渐近上界 | asymptotic upper bound | 堆化 | heapify | | 渐近上界 | asymptotic upper bound | 堆化 | heapify |
| 原码 | sign-magnitude | 图 | graph | | 原码 | sign-magnitude | 图 | graph |
| 反码 | 1s complement | 顶点 | vertex | | 反码 | 1s complement | 顶点 | vertex |

@ -63,7 +63,7 @@ hide:
--- ---
<h2 align="center"> 推荐语 </h2> <h3 align="center">推荐语</h3>
<div style="display: flex;"> <div style="display: flex;">
<div class="admonition quote" style="flex: 1; margin-right: 0.4rem;"> <div class="admonition quote" style="flex: 1; margin-right: 0.4rem;">
@ -103,7 +103,7 @@ hide:
<h3>一键运行</h3> <h3>一键运行</h3>
<svg xmlns="http://www.w3.org/2000/svg" height="28" width="28" viewBox="0 0 640 512"><!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2023 Fonticons, Inc.--><path fill="var(--md-primary-bg-color)" d="M392.8 1.2c-17-4.9-34.7 5-39.6 22l-128 448c-4.9 17 5 34.7 22 39.6s34.7-5 39.6-22l128-448c4.9-17-5-34.7-22-39.6zm80.6 120.1c-12.5 12.5-12.5 32.8 0 45.3L562.7 256l-89.4 89.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l112-112c12.5-12.5 12.5-32.8 0-45.3l-112-112c-12.5-12.5-32.8-12.5-45.3 0zm-306.7 0c-12.5-12.5-32.8-12.5-45.3 0l-112 112c-12.5 12.5-12.5 32.8 0 45.3l112 112c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256l89.4-89.4c12.5-12.5 12.5-32.8 0-45.3z"/></svg> <svg xmlns="http://www.w3.org/2000/svg" height="28" width="28" viewBox="0 0 640 512"><!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2023 Fonticons, Inc.--><path fill="var(--md-primary-bg-color)" d="M392.8 1.2c-17-4.9-34.7 5-39.6 22l-128 448c-4.9 17 5 34.7 22 39.6s34.7-5 39.6-22l128-448c4.9-17-5-34.7-22-39.6zm80.6 120.1c-12.5 12.5-12.5 32.8 0 45.3L562.7 256l-89.4 89.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l112-112c12.5-12.5 12.5-32.8 0-45.3l-112-112c-12.5-12.5-32.8-12.5-45.3 0zm-306.7 0c-12.5-12.5-32.8-12.5-45.3 0l-112 112c-12.5 12.5-12.5 32.8 0 45.3l112 112c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256l89.4-89.4c12.5-12.5 12.5-32.8 0-45.3z"/></svg>
</div> </div>
<p style="text-align: center;">十余种编程语言<br>代码可直接运行</p> <p style="text-align: center;">十余种编程语言</br>代码可直接运行</p>
</div> </div>
</div> </div>
@ -130,7 +130,7 @@ hide:
--- ---
<h2 align="center"></h2> <h3 align="center"></h3>
两年前,我在力扣上分享了“剑指 Offer”系列题解受到了许多同学的喜爱和支持。在与读者交流期间我最常收到的一个问题是“如何入门算法”。逐渐地我对这个问题产生了浓厚的兴趣。 两年前,我在力扣上分享了“剑指 Offer”系列题解受到了许多同学的喜爱和支持。在与读者交流期间我最常收到的一个问题是“如何入门算法”。逐渐地我对这个问题产生了浓厚的兴趣。
@ -140,13 +140,13 @@ hide:
我深深赞同费曼教授所言“Knowledge isn't free. You have to pay attention.”从这个意义上看,这本书并非完全“免费”。为了不辜负你为本书所付出的宝贵“注意力”,我会尽我所能,投入最大的“注意力”来完成这本书的创作。 我深深赞同费曼教授所言“Knowledge isn't free. You have to pay attention.”从这个意义上看,这本书并非完全“免费”。为了不辜负你为本书所付出的宝贵“注意力”,我会尽我所能,投入最大的“注意力”来完成这本书的创作。
<h3 align="left"> 作者简介 </h3> <h3 align="left"> 作者 </h3>
靳宇栋 ([Krahets](https://leetcode.cn/u/jyd/))大厂高级算法工程师上海交通大学硕士。力扣LeetCode全网阅读量最高博主发表的[《图解算法数据结构》](https://leetcode.cn/leetbook/detail/illustration-of-algorithm/)已被订阅 30 万本。 靳宇栋 ([Krahets](https://leetcode.cn/u/jyd/))大厂高级算法工程师上海交通大学硕士。力扣LeetCode全网阅读量最高博主发表的[《图解算法数据结构》](https://leetcode.cn/leetbook/detail/illustration-of-algorithm/)已被订阅 30 万本。
--- ---
<h2 align="center"> 致谢 </h2> <h3 align="center"> 贡献 </h3>
本书在开源社区众多贡献者的共同努力下不断完善。感谢每一位投入时间与精力的撰稿人,他们是(按照 GitHub 自动生成的顺序排列): 本书在开源社区众多贡献者的共同努力下不断完善。感谢每一位投入时间与精力的撰稿人,他们是(按照 GitHub 自动生成的顺序排列):
@ -159,17 +159,17 @@ hide:
本书的代码审阅工作由 Gonglja、gvenusleo、hpstory、justintse、krahets、night-cruise、nuomi1、Reanon 和 sjinzh 完成(按照首字母顺序排列)。感谢他们付出的时间与精力,正是他们确保了各语言代码的规范与统一。 本书的代码审阅工作由 Gonglja、gvenusleo、hpstory、justintse、krahets、night-cruise、nuomi1、Reanon 和 sjinzh 完成(按照首字母顺序排列)。感谢他们付出的时间与精力,正是他们确保了各语言代码的规范与统一。
<div class="center-table"> <div class="center-table">
<table> <table style="border: none;">
<tbody> <tbody>
<td align="center"><a href="https://github.com/Gonglja"><img style="border-radius: 50%;" src="https://avatars.githubusercontent.com/u/39959756?v=4" width="50px;" alt="Gonglja"/><br /><sub><b>Gonglja</b></sub></a><br /><sub>C, C++</sub></td> <td align="center" style="border: none;"><a href="https://github.com/Gonglja"><img style="border-radius: 50%;" src="https://avatars.githubusercontent.com/u/39959756?v=4" width="50px;" alt="Gonglja"/></br><sub><b>Gonglja</b></sub></a></br><sub>C, C++</sub></td>
<td align="center"><a href="https://github.com/gvenusleo"><img style="border-radius: 50%;" src="https://avatars.githubusercontent.com/u/79075347?v=4" width="50px;" alt="gvenusleo"/><br /><sub><b>gvenusleo</b></sub></a><br /><sub>Dart</sub></td> <td align="center" style="border: none;"><a href="https://github.com/gvenusleo"><img style="border-radius: 50%;" src="https://avatars.githubusercontent.com/u/79075347?v=4" width="50px;" alt="gvenusleo"/></br><sub><b>gvenusleo</b></sub></a></br><sub>Dart</sub></td>
<td align="center"><a href="https://github.com/hpstory"><img style="border-radius: 50%;" src="https://avatars.githubusercontent.com/u/33348162?v=4" width="50px;" alt="hpstory"/><br /><sub><b>hpstory</b></sub></a><br /><sub>C#</sub></td> <td align="center" style="border: none;"><a href="https://github.com/hpstory"><img style="border-radius: 50%;" src="https://avatars.githubusercontent.com/u/33348162?v=4" width="50px;" alt="hpstory"/></br><sub><b>hpstory</b></sub></a></br><sub>C#</sub></td>
<td align="center"><a href="https://github.com/justin-tse"><img style="border-radius: 50%;" src="https://avatars.githubusercontent.com/u/24556310?v=4" width="50px;" alt="justin-tse"/><br /><sub><b>justin-tse</b></sub></a><br /><sub>JS, TS</sub></td> <td align="center" style="border: none;"><a href="https://github.com/justin-tse"><img style="border-radius: 50%;" src="https://avatars.githubusercontent.com/u/24556310?v=4" width="50px;" alt="justin-tse"/></br><sub><b>justin-tse</b></sub></a></br><sub>JS, TS</sub></td>
<td align="center"><a href="https://github.com/krahets"><img style="border-radius: 50%;" src="https://avatars.githubusercontent.com/u/26993056?v=4" width="50px;" alt="krahets"/><br /><sub><b>krahets</b></sub></a><br /><sub>Java, Python</sub></td> <td align="center" style="border: none;"><a href="https://github.com/krahets"><img style="border-radius: 50%;" src="https://avatars.githubusercontent.com/u/26993056?v=4" width="50px;" alt="krahets"/></br><sub><b>krahets</b></sub></a></br><sub>Java, Python</sub></td>
<td align="center"><a href="https://github.com/night-cruise"><img style="border-radius: 50%;" src="https://avatars.githubusercontent.com/u/77157236?v=4" width="50px;" alt="night-cruise"/><br /><sub><b>night-cruise</b></sub></a><br /><sub>Rust</sub></td> <td align="center" style="border: none;"><a href="https://github.com/night-cruise"><img style="border-radius: 50%;" src="https://avatars.githubusercontent.com/u/77157236?v=4" width="50px;" alt="night-cruise"/></br><sub><b>night-cruise</b></sub></a></br><sub>Rust</sub></td>
<td align="center"><a href="https://github.com/nuomi1"><img style="border-radius: 50%;" src="https://avatars.githubusercontent.com/u/3739017?v=4" width="50px;" alt="nuomi1"/><br /><sub><b>nuomi1</b></sub></a><br /><sub>Swift</sub></td> <td align="center" style="border: none;"><a href="https://github.com/nuomi1"><img style="border-radius: 50%;" src="https://avatars.githubusercontent.com/u/3739017?v=4" width="50px;" alt="nuomi1"/></br><sub><b>nuomi1</b></sub></a></br><sub>Swift</sub></td>
<td align="center"><a href="https://github.com/Reanon"><img style="border-radius: 50%;" src="https://avatars.githubusercontent.com/u/22005836?v=4" width="50px;" alt="Reanon"/><br /><sub><b>Reanon</b></sub></a><br /><sub>Go, C</sub></td> <td align="center" style="border: none;"><a href="https://github.com/Reanon"><img style="border-radius: 50%;" src="https://avatars.githubusercontent.com/u/22005836?v=4" width="50px;" alt="Reanon"/></br><sub><b>Reanon</b></sub></a></br><sub>Go, C</sub></td>
<td align="center"><a href="https://github.com/sjinzh"><img style="border-radius: 50%;" src="https://avatars.githubusercontent.com/u/99076655?v=4" width="50px;" alt="sjinzh"/><br /><sub><b>sjinzh</b></sub></a><br /><sub>Rust, Zig</sub></td> <td align="center" style="border: none;"><a href="https://github.com/sjinzh"><img style="border-radius: 50%;" src="https://avatars.githubusercontent.com/u/99076655?v=4" width="50px;" alt="sjinzh"/></br><sub><b>sjinzh</b></sub></a></br><sub>Rust, Zig</sub></td>
</tbody> </tbody>
</table> </table>
</div> </div>

Loading…
Cancel
Save