mirror of
https://github.com/krahets/hello-algo.git
synced 2024-12-25 01:06:30 +08:00
Update the chapter preface.
This commit is contained in:
parent
8c65345b76
commit
ca261a8f46
7 changed files with 16 additions and 10 deletions
|
@ -4,7 +4,6 @@
|
|||
* Author: Zhuo Qinyue (1403450829@qq.com)
|
||||
*/
|
||||
|
||||
|
||||
/* 基于环形数组实现的双向队列 */
|
||||
class ArrayDeque {
|
||||
#nums; // 用于存储双向队列元素的数组
|
||||
|
|
|
@ -378,7 +378,7 @@
|
|||
[class]{}-[func]{insert}
|
||||
```
|
||||
|
||||
在链表中删除结点也很方便,只需要改变一个结点指针即可。如下图所示,虽然在完成删除后结点 `P` 仍然指向 `n2` ,但实际上 `P` 已经不属于此链表了,因为遍历此链表是无法访问到 `P` 的。
|
||||
在链表中删除结点也很方便,只需要改变一个结点指针即可。如下图所示,虽然在完成删除后结点 `P` 仍然指向 `n1` ,但实际上 `P` 已经不属于此链表了,因为遍历此链表是无法访问到 `P` 的。
|
||||
|
||||
![链表删除结点](linked_list.assets/linkedlist_remove_node.png)
|
||||
|
||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 279 KiB After Width: | Height: | Size: 1.3 MiB |
|
@ -1,12 +1,10 @@
|
|||
# 关于本书
|
||||
|
||||
五年前发生的一件事,成为了我职业生涯的重要转折点。当时的我在交大读研,对互联网求职一无所知,但仍然硬着头皮申请了 Microsoft 软件工程师实习。面试官让我在白板上写出“快速排序”代码,我畏畏缩缩地写了一个“冒泡排序”,并且还写错了` (ToT) ` 。从面试官的表情上,我看到了一个大大的 "GG" 。
|
||||
本项目致力于构建一本开源免费、新手友好的数据结构与算法入门书。
|
||||
|
||||
此次失利倒逼我开始刷算法题。我采用“扫雷游戏”式的学习方法,两眼一抹黑刷题,扫到不会的“雷”就通过查资料把它“排掉”,配合周期性总结,逐渐形成了数据结构与算法的知识图景。幸运地,我在秋招斩获了多家大厂的 Offer 。
|
||||
|
||||
回想自己当初在“扫雷式”刷题中被炸的满头包的痛苦,思考良久,**我意识到一本“前期刷题必看”的读物可以使算法小白少走许多弯路**。写作意愿滚滚袭来,那就动笔吧:
|
||||
|
||||
<h4 align="center"> Hello 算法! </h4>
|
||||
- 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂、学习曲线平滑;
|
||||
- 算法源代码皆可一键运行,支持 Java, C++, Python, Go, JS, TS, C#, Swift, Zig 等语言;
|
||||
- 鼓励读者在章节讨论区互帮互助、共同进步,提问与评论一般能在两日内得到回复;
|
||||
|
||||
## 读者对象
|
||||
|
||||
|
@ -22,7 +20,7 @@
|
|||
|
||||
## 内容结构
|
||||
|
||||
本书主要内容分为复杂度分析、数据结构、算法三个部分。
|
||||
本书主要内容有:
|
||||
|
||||
- **复杂度分析**:数据结构与算法的评价维度、算法效率的评估方法。时间复杂度、空间复杂度,包括推算方法、常见类型、示例等。
|
||||
- **数据结构**:常用的基本数据类型,数据在内存中的存储方式、数据结构分类方法。数组、链表、栈、队列、散列表、树、堆、图等数据结构,内容包括定义、优劣势、常用操作、常见类型、典型应用、实现方法等。
|
||||
|
|
8
docs/chapter_preface/summary.md
Normal file
8
docs/chapter_preface/summary.md
Normal file
|
@ -0,0 +1,8 @@
|
|||
# 小结
|
||||
|
||||
- 本书主要面向算法初学者。对于已经有一定积累的同学,这本书可以帮助你系统回顾算法知识,源代码可被当作“刷题工具库”来使用。
|
||||
- 书中内容主要分为复杂度分析、数据结构、算法三部分,覆盖了该领域的大部分主题。
|
||||
- 对于算法小白,在初学阶段阅读一本入门书是非常有必要的,可以少走许多弯路。
|
||||
- 书内的动画和图解往往介绍的是重点和难点知识,在阅读时应该多加关注。
|
||||
- 实践是学习编程的最佳方式,强烈推荐运行源代码,动手敲代码。
|
||||
- 本书提供了讨论区,遇到疑惑可以随时提问。
|
|
@ -439,7 +439,7 @@
|
|||
|
||||
=== "JavaScript"
|
||||
|
||||
```js title="array_deque.js"
|
||||
```javascript title="array_deque.js"
|
||||
[class]{ArrayDeque}-[func]{}
|
||||
```
|
||||
|
||||
|
|
|
@ -127,6 +127,7 @@ nav:
|
|||
- 0. 写在前面:
|
||||
- 0.1. 关于本书: chapter_preface/about_the_book.md
|
||||
- 0.2. 如何使用本书: chapter_preface/suggestions.md
|
||||
- 0.3. 小结: chapter_preface/summary.md
|
||||
- 1. 引言:
|
||||
- 1.1. 算法无处不在: chapter_introduction/algorithms_are_everywhere.md
|
||||
- 1.2. 算法是什么: chapter_introduction/what_is_dsa.md
|
||||
|
|
Loading…
Reference in a new issue