English translation is in progress... Some articles are still in Chinese, but most are completed. Please **star** this repo. The full translation will eventually be finished. Enjoy.
These articles go over different kinds of **Algorithmic Thinking**. All are based on LeetCode problems. They are **not only the solution code for the problem, but also WHY the solution works and HOW we can figure it out**.
These articles go over different kinds of **Algorithmic Thinking**. All are based on LeetCode problems. They contain **not just the solution code for a problem, but also WHY the solution works and HOW you too can figure it out**.
I don't like one-liners. They can be confusing. I like clear, easily understandable code.
The **Gitbook** has been deployed and will sync with this branch of the repo: [https://labuladong.gitbook.io/algo-en/](https://labuladong.gitbook.io/algo-en/)
If you want to clone this repo, please use following command:
If you would like to clone this repo, please use following command:
```shell
git clone --depth 1 --branch english https://github.com/labuladong/fucking-algorithm.git
...
...
@@ -18,79 +18,90 @@ This command specifies the `english` branch and will limit the depth of the clon
## Table of Contents
* I. Dynamic Programming
* 0 . Must Read Series
*[The Framework for Learning Algorithms and intense problem solving exercises](think_like_computer/Framework%20and%20thoughts%20about%20learning%20data%20structure%20and%20algorithm.md)
*[Algs4: Recommended book for Learning Algorithms and Data Structures](think_like_computer/why_i_recommend_algs4.md)
*[An analysis of Dynamic Programming](dynamic_programming/AnalysisOfDynamicProgramming.md)
*[Dynamic Programming Q&A - What is Optimal Substructure](dynamic_programming/OptimalSubstructure.md)
*[The Framework for Backtracking Algorithm](think_like_computer/DetailsaboutBacktracking.md)
*[Binary Search in Detail: I wrote a Poem](think_like_computer/DetailedBinarySearch.md)
*[Stock Buy and Sell Problems](dynamic_programming/BestTimeToBuyAndSellStock.md)
* II. Data Structures
*[Binary Head and Priority Queue](data_structure/binary_heap_implements_priority_queues.md)
* II. Data Structures Series
*[The Framework for Learning Algorithms and intense problem solving exercises](think_like_computer/Framework%20and%20thoughts%20about%20learning%20data%20structure%20and%20algorithm.md)
*[Algs4: Recommended book for Learning Algorithms and Data Structures](think_like_computer/why_i_recommend_algs4.md)
*[Binary Heap and Priority Queue](data_structure/binary_heap_implements_priority_queues.md)
*[LRU Cache Strategy in Detail](interview/LRU_algorithm.md)
*[Collections of Binary Search Operations](data_structure/The_Manipulation_Collection_of_Binary_Search_Tree.md)
*[Special Data Structure: Monotonic Stack](data_structure/MonotonicStack.md)
*[Special Data Structure: Monotonic Stack](data_structure/Monotonic_queue.md)
*[Frameworkabout learning data structure and algorithm](think_like_computer/Framework%20and%20thoughts%20about%20learning%20data%20structure%20and%20algorithm.md)
* III. Algorithmic thinking
* III. Algorithmic Thinking Series
*[My Way to Learn Algorithm](think_like_computer/ThewaytoAlgorithmlearning.md)
*[The Framwork of Backtracking Algorithm](think_like_computer/DetailsaboutBacktracking.md)
*[The Framework of Backtracking Algorithm](think_like_computer/DetailsaboutBacktracking.md)
*[Binary Search in Detail](think_like_computer/DetailedBinarySearch.md)
*[The Tech of Double Pointer](think_like_computer/double_pointer.md)
*[The Key Concept of TowSum Problems](think_like_computer/The_key_to_resolving_TwoSum_problems.md)
*[Divide Complicated Problem: Implement a Calculator](data_structure/Implementing_the_functions_of_a_calculator.md)
*[Prefix Sum Skill](think_like_computer/prefix_sum.md)