# README

leetcode暂时不支持`dart`语言。不过以`flutter`发展趋势，以后肯定会支持的。所以现在可以用[dartpad](https://dartpad.dev/)进行在线调试。

**惨痛的经历写在最前面：别想着走捷径**

如真的想练习算法。除了刷题 没有其他好办法。一句话别想着走捷径,靠看几套视频和几套模板就可以搞定一切这不现实。 练习算法就是要长期坚持和慢慢积累。

我感觉最初学算法或者技术最坑逼的就是想走捷径。因为自己能走的捷径别人也能走，最后就是大家一起走投无路。

如果有人告诉你学习算法有捷径，大概率不是想骗你钱就是想骗你流量。

## 在线文档

Github:[仓库地址](https://github.com/Esdeath/algorithm-pattern-dart)

在线文档 Gitbook：[算法模板 🔥](https://ayaseeri.gitbook.io/algorithm-pattern-dart/)

在线调试：[dartpad 🔥](https://dartpad.dev/)

## 核心内容

### 入门篇 🐶

* [dart 语言入门](https://ayaseeri.gitbook.io/algorithm-pattern-dart/ru-men-pian/dart)
* [算法快速入门](https://ayaseeri.gitbook.io/algorithm-pattern-dart/ru-men-pian/quickstart)

### 数据结构篇 🐰

* [二叉树](https://ayaseeri.gitbook.io/algorithm-pattern-dart/shu-ju-jie-gou-pian/binary_tree)
* [链表](https://ayaseeri.gitbook.io/algorithm-pattern-dart/shu-ju-jie-gou-pian/linked_list)
* [栈和队列](https://ayaseeri.gitbook.io/algorithm-pattern-dart/shu-ju-jie-gou-pian/stack_queue)
* [二进制](https://ayaseeri.gitbook.io/algorithm-pattern-dart/shu-ju-jie-gou-pian/binary_op)

### 基础算法篇 🐮

* [二分搜索](https://ayaseeri.gitbook.io/algorithm-pattern-dart/ji-chu-suan-fa-pian/binary_search)
* [排序算法](https://ayaseeri.gitbook.io/algorithm-pattern-dart/ji-chu-suan-fa-pian/sort)
* [动态规划](https://ayaseeri.gitbook.io/algorithm-pattern-dart/ji-chu-suan-fa-pian/dp)

### 算法思维 🦁

* [递归思维](https://ayaseeri.gitbook.io/algorithm-pattern-dart/suan-fa-si-wei/recursion)
* [滑动窗口思想](https://ayaseeri.gitbook.io/algorithm-pattern-dart/suan-fa-si-wei/slide_window)
* [二叉搜索树](https://ayaseeri.gitbook.io/algorithm-pattern-dart/suan-fa-si-wei/binary_search_tree)
* [回溯法](https://ayaseeri.gitbook.io/algorithm-pattern-dart/suan-fa-si-wei/backtrack)

## 推荐的刷题路径

按此 repo 目录刷一遍，如果中间有题目卡住了先跳过，然后刷题一遍 LeetCode 探索基础卡片，最后快要面试时刷题一遍剑指 offer。

为什么这么要这么刷，因为 repo 里面的题目是按类型归类，都是一些常见的高频题，很有代表性，大部分都是可以用模板加一点变形做出来，刷完后对大部分题目有基本的认识。然后刷一遍探索卡片，巩固一下一些基础知识点，总结这些知识点。最后剑指 offer 是大部分公司的出题源头，刷完面试中基本会遇到现题或者变形题，基本刷完这三部分，大部分国内公司的面试题应该就没什么问题了\~

1、 [algorithm-pattern 练习题](https://ayaseeri.gitbook.io/algorithm-pattern-dart/)

![练习题](https://img.fuiboom.com/img/repo_practice.png)

2、 [LeetCode 卡片](https://leetcode-cn.com/explore/)

![探索卡片](https://img.fuiboom.com/img/leetcode_explore.png)

3、 [剑指 offer](https://leetcode-cn.com/problemset/lcof/)

![剑指offer](https://img.fuiboom.com/img/leetcode_jzoffer.png)

> 注意点：如果为了找工作刷题，遇到 hard 的题如果有思路就做，没思路先跳过，先把基础打好，再来刷 hard 可能效果会更好\~

## 完成打卡

完成计划之后，可以提交 Pull requests，在下面添加自己的项目仓库，完成自己的算法模板打卡呀\~

| 完成 | 用户                                                | 项目地址                                                                                                                                                     |
| -- | ------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| ✅  | [easyui](https://github.com/easyui/)              | [algorithm-pattern-swift(Swift 实现)](https://github.com/easyui/algorithm-pattern-swift),[在线文档 Gitbook](https://zyj.gitbook.io/algorithm-pattern-swift/)   |
| ✅  | [wardseptember](https://github.com/wardseptember) | [notes(Java 实现)](https://github.com/wardseptember/notes)                                                                                                 |
| ✅  | [dashidhy](https://github.com/dashidhy)           | [algorithm-pattern-python(Python 实现)](https://github.com/dashidhy/algorithm-pattern-python)                                                              |
| ✅  | [binzi56](https://github.com/binzi56)             | [algorithm-pattern-c(c++ 实现)](https://github.com/binzi56/algorithm-pattern-c)                                                                            |
| ✅  | [lvseouren](https://github.com/lvseouren)         | [algorithm-study-record(c++ 实现)](https://github.com/lvseouren/algorithm-study-record)                                                                    |
| ✅  | [chienmy](https://github.com/chienmy)             | [algorithm-pattern-java(Java 实现)](https://github.com/chienmy/algorithm-pattern-java), [在线文档 Gitbook](https://chienmy.gitbook.io/algorithm-pattern-java/) |
| ✅  | [ligecarryme](https://github.com/ligecarryme)     | [algorithm-pattern-JavaScript(JS+TS实现)](https://github.com/ligecarryme/algorithm-pattern-JavaScript)                                                     |
| ✅  | [greyireland](https://github.com/greyireland)     | [algorithm-pattern-go(go实现)](https://greyireland.gitbook.io/algorithm-pattern/)                                                                          |
| ✅  | [Esdeath](https://github.com/Esdeath)             | [algorithm-pattern-dart(dart实现)](https://github.com/Esdeath/algorithm-pattern-dart),[在线文档 Gitbook](https://ayaseeri.gitbook.io/algorithm-pattern-dart/)  |
