You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
hello-algo/docs/index.md

127 lines
6.4 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

---
comments: true
hide:
- footer
---
<h1 align="center"> </h1>
<p align="center">
<img src="index.assets/conceptual_rendering.png" width="250">
<img src="index.assets/hello_algo_knowledge_map_tp.png" width="400">
</p>
<h2 align="center"> 《 Hello 算法 》</h2>
<p align="center"> 动画图解、一键运行的数据结构与算法教程 </p>
<p align="center">
<a href="https://github.com/krahets/hello-algo">
<img alt="GitHub Repo stars" src="https://img.shields.io/github/stars/krahets/hello-algo?style=social&link=https%3A%2F%2Fgithub.com%2Fkrahets%2Fhello-algo">
</a>
&nbsp;
<a href="https://github.com/krahets/hello-algo">
<img alt="GitHub contributors" src="https://img.shields.io/github/contributors-anon/krahets/hello-algo?style=social&logo=handshake&logoColor=%23101010">
</a>
</p>
---
<h2 align="center"> 推荐语 </h2>
!!! quote
“一本通俗易懂的数据结构与算法入门书,引导读者手脑并用地学习,强烈推荐算法初学者阅读。”
**—— 邓俊辉,清华大学计算机系教授**
!!! quote
“如果我当年学数据结构与算法的时候有《Hello 算法》,学起来应该会简单 10 倍!”
**—— 李沐,亚马逊资深首席科学家**
---
<h3 align="center"> 全书动画图解 </h3>
<p align="center"> 内容清晰易懂、学习曲线平滑</br>电脑、平板、手机全终端阅读 </p>
![algorithm_animation](index.assets/animation.gif)
!!! quote ""
<p align="center"> "A picture is worth a thousand words." </p>
<p align="center"> “一图胜千言” </p>
---
<h3 align="center"> 代码一键运行 </h3>
<p align="center"> 提供各个算法与数据结构的简洁实现与测试样例,皆可直接运行</br>支持 Java, C++, Python, Go, JS, TS, C#, Swift, Zig 等语言 </p>
![running_code](index.assets/running_code.gif)
!!! quote ""
<p align="center"> "Talk is cheap. Show me the code." </p>
<p align="center"> “少吹牛,看代码” </p>
---
<h3 align="center"> 可讨论与提问 </h3>
<p align="center"> 鼓励小伙伴们互帮互助、共同成长</br>提问与评论一般能在两日内得到回复 </p>
![comment](index.assets/comment.gif)
!!! quote ""
<p align="center"> “追风赶月莫停留,平芜尽处是春山” </p>
<p align="center"> 一起加油! </p>
---
<h2 align="center"></h2>
两年前,我在力扣上分享了《剑指 Offer》系列题解受到了许多朋友的喜爱与支持。在此期间我回答了众多读者的评论问题其中最常见的一个问题是“如何入门学习算法”。我逐渐也对这个问题产生了浓厚的兴趣。
两眼一抹黑地刷题似乎是最受欢迎的方法,简单直接且有效。然而,刷题就如同玩“扫雷”游戏,自学能力强的同学能够顺利地将地雷逐个排掉,而基础不足的同学很可能被炸的满头是包,并在挫折中步步退缩。通读教材书籍也是一种常见做法,但对于面向求职的同学来说,毕业季、投递简历、准备笔试面试已经占据了大部分精力,厚重的书籍往往变成了一项艰巨的挑战。
如果你也面临类似的困扰,那么很幸运这本书找到了你。本书是我对此问题的给出的答案,虽然不一定正确,但至少是一次积极的尝试。这本书虽然不足以让你直接拿到 Offer ,但会引导你探索数据结构与算法的“知识地图”,带你了解不同“地雷”的形状大小和分布位置,让你掌握各种“排雷方法”。有了这些本领,相信你可以更加自如地应对刷题和阅读文献,逐步构建起完整的知识体系。
<h3 align="left"> 作者简介 </h3>
靳宇栋 ([Krahets](https://leetcode.cn/u/jyd/))大厂高级算法工程师上海交通大学硕士。力扣LeetCode全网阅读量最高博主其 LeetBook《图解算法数据结构》已被订阅 24 万本。
---
<h2 align="center"> 致谢 </h2>
本书在开源社区众多贡献者的共同努力下不断成长。感谢每一位投入时间与精力的撰稿人,是他们无私奉献使这本书越变越好,他们是(按照 GitHub 自动生成的顺序排列):
<p align="center">
<a href="https://github.com/krahets/hello-algo/graphs/contributors">
<img width="550" src="https://contrib.rocks/image?repo=krahets/hello-algo" />
</a>
</p>
本书的代码审阅工作由 Gonglja, gvenusleo, justintse, krahets, nuomi1, Reanon, sjinzh 完成(按照首字母顺序排列)。感谢他们付出的时间与精力,正是他们确保了各语言代码的规范与统一。
<div class="center-table">
<table>
<tbody>
<td align="center"><a href="https://github.com/Gonglja"><img 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 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 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 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 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/nuomi1"><img 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 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 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>
</table>
</div>
---