Skip to content

Commit

Permalink
Update the chapter preface.
Browse files Browse the repository at this point in the history
  • Loading branch information
krahets committed Mar 3, 2023
1 parent 8c65345 commit ca261a8
Show file tree
Hide file tree
Showing 7 changed files with 16 additions and 10 deletions.
1 change: 0 additions & 1 deletion codes/javascript/chapter_stack_and_queue/array_deque.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
* Author: Zhuo Qinyue ([email protected])
*/


/* 基于环形数组实现的双向队列 */
class ArrayDeque {
#nums; // 用于存储双向队列元素的数组
Expand Down
2 changes: 1 addition & 1 deletion docs/chapter_array_and_linkedlist/linked_list.md
Original file line number Diff line number Diff line change
Expand Up @@ -378,7 +378,7 @@
[class]{}-[func]{insert}
```

在链表中删除结点也很方便,只需要改变一个结点指针即可。如下图所示,虽然在完成删除后结点 `P` 仍然指向 `n2` ,但实际上 `P` 已经不属于此链表了,因为遍历此链表是无法访问到 `P` 的。
在链表中删除结点也很方便,只需要改变一个结点指针即可。如下图所示,虽然在完成删除后结点 `P` 仍然指向 `n1` ,但实际上 `P` 已经不属于此链表了,因为遍历此链表是无法访问到 `P` 的。

![链表删除结点](linked_list.assets/linkedlist_remove_node.png)

Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
12 changes: 5 additions & 7 deletions docs/chapter_preface/about_the_book.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
# 关于本书

五年前发生的一件事,成为了我职业生涯的重要转折点。当时的我在交大读研,对互联网求职一无所知,但仍然硬着头皮申请了 Microsoft 软件工程师实习。面试官让我在白板上写出“快速排序”代码,我畏畏缩缩地写了一个“冒泡排序”,并且还写错了` (ToT) ` 。从面试官的表情上,我看到了一个大大的 "GG"
本项目致力于构建一本开源免费、新手友好的数据结构与算法入门书

此次失利倒逼我开始刷算法题。我采用“扫雷游戏”式的学习方法,两眼一抹黑刷题,扫到不会的“雷”就通过查资料把它“排掉”,配合周期性总结,逐渐形成了数据结构与算法的知识图景。幸运地,我在秋招斩获了多家大厂的 Offer 。

回想自己当初在“扫雷式”刷题中被炸的满头包的痛苦,思考良久,**我意识到一本“前期刷题必看”的读物可以使算法小白少走许多弯路**。写作意愿滚滚袭来,那就动笔吧:

<h4 align="center"> Hello 算法! </h4>
- 全书采用动画图解,结构化地讲解数据结构与算法知识,内容清晰易懂、学习曲线平滑;
- 算法源代码皆可一键运行,支持 Java, C++, Python, Go, JS, TS, C#, Swift, Zig 等语言;
- 鼓励读者在章节讨论区互帮互助、共同进步,提问与评论一般能在两日内得到回复;

## 读者对象

Expand All @@ -22,7 +20,7 @@

## 内容结构

本书主要内容分为复杂度分析、数据结构、算法三个部分。
本书主要内容有:

- **复杂度分析**:数据结构与算法的评价维度、算法效率的评估方法。时间复杂度、空间复杂度,包括推算方法、常见类型、示例等。
- **数据结构**:常用的基本数据类型,数据在内存中的存储方式、数据结构分类方法。数组、链表、栈、队列、散列表、树、堆、图等数据结构,内容包括定义、优劣势、常用操作、常见类型、典型应用、实现方法等。
Expand Down
8 changes: 8 additions & 0 deletions docs/chapter_preface/summary.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# 小结

- 本书主要面向算法初学者。对于已经有一定积累的同学,这本书可以帮助你系统回顾算法知识,源代码可被当作“刷题工具库”来使用。
- 书中内容主要分为复杂度分析、数据结构、算法三部分,覆盖了该领域的大部分主题。
- 对于算法小白,在初学阶段阅读一本入门书是非常有必要的,可以少走许多弯路。
- 书内的动画和图解往往介绍的是重点和难点知识,在阅读时应该多加关注。
- 实践是学习编程的最佳方式,强烈推荐运行源代码,动手敲代码。
- 本书提供了讨论区,遇到疑惑可以随时提问。
2 changes: 1 addition & 1 deletion docs/chapter_stack_and_queue/deque.md
Original file line number Diff line number Diff line change
Expand Up @@ -439,7 +439,7 @@

=== "JavaScript"

```js title="array_deque.js"
```javascript title="array_deque.js"
[class]{ArrayDeque}-[func]{}
```

Expand Down
1 change: 1 addition & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,7 @@ nav:
- 0. &nbsp; &nbsp; 写在前面:
- 0.1. &nbsp; 关于本书: chapter_preface/about_the_book.md
- 0.2. &nbsp; 如何使用本书: chapter_preface/suggestions.md
- 0.3. &nbsp; 小结: chapter_preface/summary.md
- 1. &nbsp; &nbsp; 引言:
- 1.1. &nbsp; 算法无处不在: chapter_introduction/algorithms_are_everywhere.md
- 1.2. &nbsp; 算法是什么: chapter_introduction/what_is_dsa.md
Expand Down

0 comments on commit ca261a8

Please sign in to comment.