From 53cd41c68603e973839e8b641620a9266e18385a Mon Sep 17 00:00:00 2001 From: Tadevi Date: Sat, 4 Jun 2022 11:31:50 +0000 Subject: [PATCH] GitBook: [#1] No subject --- README.md | 157 ++++++++---------- SUMMARY.md | 133 +++++++-------- i.-dynamic-programming/README.md | 2 + ii.-data-structure/README.md | 2 + iii.-algorithmic-thinking/README.md | 2 + .../README.md | 2 + v.-common-knowledge/README.md | 2 + 7 files changed, 141 insertions(+), 159 deletions(-) create mode 100644 i.-dynamic-programming/README.md create mode 100644 ii.-data-structure/README.md create mode 100644 iii.-algorithmic-thinking/README.md create mode 100644 iv.-high-frequency-interview-problem/README.md create mode 100644 v.-common-knowledge/README.md diff --git a/README.md b/README.md index 3539c2af2f..de3183eea8 100644 --- a/README.md +++ b/README.md @@ -1,107 +1,84 @@ -# Fucking algorithm - -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 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 would like to clone this repo, please use following command: - -```shell -git clone --depth 1 --branch english https://github.com/labuladong/fucking-algorithm.git -``` - -This command specifies the `english` branch and will limit the depth of the clone and get rid of the Git commit history, which can be faster to clone. - -## Table of Contents +# Table of Content * 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) - * [The Sliding Window Technique](think_like_computer/SlidingWindowTechnique.md) - * [Difference Between Process and Thread in Linux](common_knowledge/linuxProcess.md) - * [Some Good Online Practice Platforms](common_knowledge/OnlinePraticePlatform.md) - + * [The Framework for Learning Algorithms and intense problem solving exercises]() + * [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) + * [The Sliding Window Technique](think\_like\_computer/SlidingWindowTechnique.md) + * [Difference Between Process and Thread in Linux](common\_knowledge/linuxProcess.md) + * [Some Good Online Practice Platforms](common\_knowledge/OnlinePraticePlatform.md) * I. Dynamic Programming Series - * [Dynamic Programming in Details](dynamic_programming/AnalysisOfDynamicProgramming.md) - * [Dynamic Programming Q&A - What is Optimal Substructure](dynamic_programming/OptimalSubstructure.md) - * [Classic DP: Longest Common Subsequence](dynamic_programming/LongestCommonSubsequence.md) - * [Classic DP: Edit Distance](dynamic_programming/EditDistance.md) - * [Classic DP: Super Egg](dynamic_programming/ThrowingEggsinHighBuildings.md) - * [Classic DP: Super Egg (Advanced Solution)](dynamic_programming/SuperEggDropAdvanced.md) - * [The Strategies of Subsequence Problem](dynamic_programming/StrategiesForSubsequenceProblem.md) - * [Classic DP: Game Problems](dynamic_programming/GameProblemsInDynamicProgramming.md) - * [Greedy: Interval Scheduling](dynamic_programming/IntervalScheduling.md) - * [KMP Algorithm In Detail](dynamic_programming/KMPCharacterMatchingAlgorithmInDynamicProgramming.md) - * [A solution to all Buy Time to Buy and Sell Stock Problems](dynamic_programming/BestTimeToBuyAndSellStock.md) - * [A solution to all House Robber Problems](dynamic_programming/HouseRobber.md) - * [4 Keys Keyboard](dynamic_programming/FourKeysKeyboard.md) - * [Regular Expression](dynamic_programming/RegularExpression.md) - * [Longest Increasing Subsequence](dynamic_programming/LongestIncreasingSubsequence.md) - + * [Dynamic Programming in Details](dynamic\_programming/AnalysisOfDynamicProgramming.md) + * [Dynamic Programming Q\&A - What is Optimal Substructure](dynamic\_programming/OptimalSubstructure.md) + * [Classic DP: Longest Common Subsequence](dynamic\_programming/LongestCommonSubsequence.md) + * [Classic DP: Edit Distance](dynamic\_programming/EditDistance.md) + * [Classic DP: Super Egg](dynamic\_programming/ThrowingEggsinHighBuildings.md) + * [Classic DP: Super Egg (Advanced Solution)](dynamic\_programming/SuperEggDropAdvanced.md) + * [The Strategies of Subsequence Problem](dynamic\_programming/StrategiesForSubsequenceProblem.md) + * [Classic DP: Game Problems](dynamic\_programming/GameProblemsInDynamicProgramming.md) + * [Greedy: Interval Scheduling](dynamic\_programming/IntervalScheduling.md) + * [KMP Algorithm In Detail](dynamic\_programming/KMPCharacterMatchingAlgorithmInDynamicProgramming.md) + * [A solution to all Buy Time to Buy and Sell Stock Problems](dynamic\_programming/BestTimeToBuyAndSellStock.md) + * [A solution to all House Robber Problems](dynamic\_programming/HouseRobber.md) + * [4 Keys Keyboard](dynamic\_programming/FourKeysKeyboard.md) + * [Regular Expression](dynamic\_programming/RegularExpression.md) + * [Longest Increasing Subsequence](dynamic\_programming/LongestIncreasingSubsequence.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 Queue](data_structure/Monotonic_queue.md) - * [Design Twitter](data_structure/design_Twitter.md) - * [Reverse Part of Linked List via Recursion](data_structure/reverse_part_of_a_linked_list_via_recursion.md) - * [Queue Implement Stack/Stack implement Queue](data_structure/ImplementQueueUsingStacksImplementStackUsingQueues.md) - + * [The Framework for Learning Algorithms and intense problem solving exercises]() + * [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 Queue](data\_structure/Monotonic\_queue.md) + * [Design Twitter](data\_structure/design\_Twitter.md) + * [Reverse Part of Linked List via Recursion](data\_structure/reverse\_part\_of\_a\_linked\_list\_via\_recursion.md) + * [Queue Implement Stack/Stack implement Queue](data\_structure/ImplementQueueUsingStacksImplementStackUsingQueues.md) * III. Algorithmic Thinking Series - * [My Way to Learn Algorithm](think_like_computer/ThewaytoAlgorithmlearning.md) - * [The Framework of Backtracking Algorithm](think_like_computer/DetailsaboutBacktracking.md) - * [Binary Search in Detail](think_like_computer/DetailedBinarySearch.md) - * [Backtracking Solve Subset/Permutation/Combination](interview/Subset_Permutation_Combination.md) - * [Diving into the technical parts of Double Pointers](think_like_computer/double_pointer.md) - * [Sliding Window Technique](think_like_computer/SlidingWindowTechnique.md) - * [The Core Concept of TwoSum Problems](think_like_computer/The_key_to_resolving_TwoSum_problems.md) - * [Common Bit Manipulations](think_like_computer/CommonBitManipulation.md) - * [Breaking down a Complicated Problem: Implement a Calculator](data_structure/Implementing_the_functions_of_a_calculator.md) - * [Pancake Sorting Algorithm](think_like_computer/PancakesSorting.md) - * [Prefix Sum: Intro and Concept](think_like_computer/prefix_sum.md) - * [String Multiplication](think_like_computer/string_multiplication.md) - * [FloodFill Algorithm in Detail](think_like_computer/flood_fill.md) - * [Interval Scheduling: Interval Merging](think_like_computer/IntervalMerging.md) - * [Interval Scheduling: Intersections of Intervals](think_like_computer/IntervalIntersection.md) - * [Russian Doll Envelopes Problem](think_like_computer/RussianDollEnvelopes.md) - * [A collection of counter-intuitive Probability Problems](think_like_computer/several_counter_intuitive_probability_problems.md) - * [Shuffle Algorithm](think_like_computer/Shuffle_Algorithm.md) - * [Recursion In Detail](data_structure/RecursionInDetail.md) - + * [My Way to Learn Algorithm](think\_like\_computer/ThewaytoAlgorithmlearning.md) + * [The Framework of Backtracking Algorithm](think\_like\_computer/DetailsaboutBacktracking.md) + * [Binary Search in Detail](think\_like\_computer/DetailedBinarySearch.md) + * [Backtracking Solve Subset/Permutation/Combination](interview/Subset\_Permutation\_Combination.md) + * [Diving into the technical parts of Double Pointers](think\_like\_computer/double\_pointer.md) + * [Sliding Window Technique](think\_like\_computer/SlidingWindowTechnique.md) + * [The Core Concept of TwoSum Problems](think\_like\_computer/The\_key\_to\_resolving\_TwoSum\_problems.md) + * [Common Bit Manipulations](think\_like\_computer/CommonBitManipulation.md) + * [Breaking down a Complicated Problem: Implement a Calculator](data\_structure/Implementing\_the\_functions\_of\_a\_calculator.md) + * [Pancake Sorting Algorithm](think\_like\_computer/PancakesSorting.md) + * [Prefix Sum: Intro and Concept](think\_like\_computer/prefix\_sum.md) + * [String Multiplication](think\_like\_computer/string\_multiplication.md) + * [FloodFill Algorithm in Detail](think\_like\_computer/flood\_fill.md) + * [Interval Scheduling: Interval Merging](think\_like\_computer/IntervalMerging.md) + * [Interval Scheduling: Intersections of Intervals](think\_like\_computer/IntervalIntersection.md) + * [Russian Doll Envelopes Problem](think\_like\_computer/RussianDollEnvelopes.md) + * [A collection of counter-intuitive Probability Problems](think\_like\_computer/several\_counter\_intuitive\_probability\_problems.md) + * [Shuffle Algorithm](think\_like\_computer/Shuffle\_Algorithm.md) + * [Recursion In Detail](data\_structure/RecursionInDetail.md) * IV. High Frequency Interview Series - * [How to Implement LRU Cache](interview/LRU_algorithm.md) - * [How to Find Prime Number Efficiently](interview/Print_PrimeNumbers.md) - * [How to Calculate Minimium Edit Distance](dynamic_programming/EditDistance.md) + * [How to Implement LRU Cache](interview/LRU\_algorithm.md) + * [How to Find Prime Number Efficiently](interview/Print\_PrimeNumbers.md) + * [How to Calculate Minimium Edit Distance](dynamic\_programming/EditDistance.md) * [How to use Binary Search](interview/UsingBinarySearchAlgorithm.md) - * [How to efficiently solve Trapping Rain Water Problem](interview/Trapping_Rain_Water.md) + * [How to efficiently solve Trapping Rain Water Problem](interview/Trapping\_Rain\_Water.md) * [How to Remove Duplicates From Sorted Array](interview/RemoveDuplicatesfromSortedArray.md) * [How to Find Longest Palindromic Substring](interview/TheLongestPalindromicSubstring.md) * [How to Reverse Linked List in K Group](interview/reverse-nodes-in-k-group.md) * [How to Check the Validation of Parenthesis](interview/valid-parentheses.md) - * [How to Find Missing Element](interview/missing_elements.md) + * [How to Find Missing Element](interview/missing\_elements.md) * [How to Find Duplicates and Missing Elements](interview/Find-Duplicate-and-Missing-Element.md) - * [How to Check Palindromic LinkedList](interview/check_palindromic_linkedlist.md) + * [How to Check Palindromic LinkedList](interview/check\_palindromic\_linkedlist.md) * [How to Pick Elements From an Infinite Arbitrary Sequence](interview/ReservoirSampling.md) * [How to Schedule Seats for Students](interview/Seatscheduling.md) - * [Union-Find Algorithm in Detail](think_like_computer/Union-find-Explanation.md) - * [Union-Find Application](think_like_computer/Union-Find-Application.md) + * [Union-Find Algorithm in Detail](think\_like\_computer/Union-find-Explanation.md) + * [Union-Find Application](think\_like\_computer/Union-Find-Application.md) * [Problems that can be solved in one line](interview/one-line-code-puzzles.md) * [Find Subsequence With Binary Search](interview/findSebesquenceWithBinarySearch.md) - * V. Common Knowledge - * [Difference Between Process and Thread in Linux](common_knowledge/linuxProcess.md) - * [This is the only article you need to understand `session` and `cookie`](common_knowledge/SessionAndCookie.md) - * [Knowledge about Linux Shell that you should know](common_knowledge/linuxshell.md) - * [Cryptology Algorithm](common_knowledge/Cryptology.md) - * [Git/SQL/Good Online Practice Platforms](common_knowledge/OnlinePraticePlatform.md) + * [Difference Between Process and Thread in Linux](common\_knowledge/linuxProcess.md) + * [This is the only article you need to understand `session` and `cookie`](common\_knowledge/SessionAndCookie.md) + * [Knowledge about Linux Shell that you should know](common\_knowledge/linuxshell.md) + * [Cryptology Algorithm](common\_knowledge/Cryptology.md) + * [Git/SQL/Good Online Practice Platforms](common\_knowledge/OnlinePraticePlatform.md) diff --git a/SUMMARY.md b/SUMMARY.md index c347e44d1d..590c33d5b2 100644 --- a/SUMMARY.md +++ b/SUMMARY.md @@ -1,80 +1,75 @@ -# Summary +# Table of contents -* [Introduction](README.md) - -* I. Dynamic Programming - * [Dynamic Programming in Details](dynamic_programming/AnalysisOfDynamicProgramming.md) - * [Classic DP: Edit Distance](dynamic_programming/EditDistance.md) - * [Classic DP: Super Egg](dynamic_programming/ThrowingEggsinHighBuildings.md) - * [Classic DP: Super Egg(Advanced Solution)](dynamic_programming/SuperEggDropAdvanced.md) - * [Class DP: Longest Common Subsequence](dynamic_programming/LongestCommonSubsequence.md) - * [Classis DP: Game Problems](dynamic_programming/GameProblemsInDynamicProgramming.md) - * [Regular Expression](dynamic_programming/RegularExpression.md) - * [The Strategies of Subsequence Problem](dynamic_programming/StrategiesForSubsequenceProblem.md) - * [Greedy: Interval Scheduling](dynamic_programming/IntervalScheduling.md) - * [4 Keys Keyboard](dynamic_programming/FourKeysKeyboard.md) - * [What is DP Optimal Substructure](dynamic_programming/OptimalSubstructure.md) - * [Longest Increasing Subsequence](dynamic_programming/LongestIncreasingSubsequence.md) - * [KMP Algorithm In Detail](dynamic_programming/KMPCharacterMatchingAlgorithmInDynamicProgramming.md) - * [House Robber Problems](dynamic_programming/HouseRobber.md) - * [Stock Buy and Sell Problems](dynamic_programming/BestTimeToBuyAndSellStock.md) - -* II. Data Structure - * [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) - * [Design Twitter](data_structure/design_Twitter.md) - * [Reverse Part of Linked List via Recursion](data_structure/reverse_part_of_a_linked_list_via_recursion.md) - * [What's the Best Algo Book](think_like_computer/why_i_recommend_algs4.md) - * [Queue Implement Stack/Stack implement Queue](data_structure/ImplementQueueUsingStacksImplementStackUsingQueues.md) - * [Frameworkabout learning data structure and algorithm](think_like_computer/Framework%20and%20thoughts%20about%20learning%20data%20structure%20and%20algorithm.md) - -* III. Algorithmic thinking - * [My Way to Learn Algorithm](think_like_computer/ThewaytoAlgorithmlearning.md) - * [The Framwork 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) - * [FloodFill Algorithm in Detail](think_like_computer/flood_fill.md) - * [Interval Scheduling: Interval Merging](think_like_computer/IntervalMerging.md) - * [Interval Scheduling: Intersections of Intervals](think_like_computer/IntervalIntersection.md) - * [String Multiplication](think_like_computer/string_multiplication.md) - * [Pancake Soring Algorithm](think_like_computer/PancakesSorting.md) - * [Sliding Window Algorithm](think_like_computer/SlidingWindowTechnique.md) - * [Some Useful Bit Manipulations](think_like_computer/CommonBitManipulation.md) - * [Russian Doll Envelopes Problem](think_like_computer/RussianDollEnvelopes.md) - * [Recursion In Detail](data_structure/RecursionInDetail.md) - * [Backtracking Solve Subset/Permutation/Combination](interview/Subset_Permutation_Combination.md) - * [Several counter-intuitive Probability Problems](think_like_computer/several_counter_intuitive_probability_problems.md) - * [Shuffle Algorithm](think_like_computer/Shuffle_Algorithm.md) - -* IV. High Frequency Interview Problem - * [How to Implement LRU Cache](interview/LRU_algorithm.md) - * [How to Find Prime Number Efficiently](interview/Print_PrimeNumbers.md) - * [How to Calculate Minimium Edit Distance](dynamic_programming/EditDistance.md) - * [How to Solve Drop Water Problem](interview/Trapping_Rain_Water.md) +* [Table of Content](README.md) +* [I. Dynamic Programming](i.-dynamic-programming/README.md) + * [Dynamic Programming in Details](dynamic\_programming/AnalysisOfDynamicProgramming.md) + * [Classic DP: Edit Distance](dynamic\_programming/EditDistance.md) + * [Classic DP: Super Egg](dynamic\_programming/ThrowingEggsinHighBuildings.md) + * [Classic DP: Super Egg(Advanced Solution)](dynamic\_programming/SuperEggDropAdvanced.md) + * [Class DP: Longest Common Subsequence](dynamic\_programming/LongestCommonSubsequence.md) + * [Classis DP: Game Problems](dynamic\_programming/GameProblemsInDynamicProgramming.md) + * [Regular Expression](dynamic\_programming/RegularExpression.md) + * [The Strategies of Subsequence Problem](dynamic\_programming/StrategiesForSubsequenceProblem.md) + * [Greedy: Interval Scheduling](dynamic\_programming/IntervalScheduling.md) + * [4 Keys Keyboard](dynamic\_programming/FourKeysKeyboard.md) + * [What is DP Optimal Substructure](dynamic\_programming/OptimalSubstructure.md) + * [Longest Increasing Subsequence](dynamic\_programming/LongestIncreasingSubsequence.md) + * [KMP Algorithm In Detail](dynamic\_programming/KMPCharacterMatchingAlgorithmInDynamicProgramming.md) + * [House Robber Problems](dynamic\_programming/HouseRobber.md) + * [Stock Buy and Sell Problems](dynamic\_programming/BestTimeToBuyAndSellStock.md) +* [II. Data Structure](ii.-data-structure/README.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) + * [Design Twitter](data\_structure/design\_Twitter.md) + * [Reverse Part of Linked List via Recursion](data\_structure/reverse\_part\_of\_a\_linked\_list\_via\_recursion.md) + * [What's the Best Algo Book](think\_like\_computer/why\_i\_recommend\_algs4.md) + * [Queue Implement Stack/Stack implement Queue](data\_structure/ImplementQueueUsingStacksImplementStackUsingQueues.md) + * [Frameworkabout learning data structure and algorithm]() +* [III. Algorithmic thinking](iii.-algorithmic-thinking/README.md) + * [My Way to Learn Algorithm](think\_like\_computer/ThewaytoAlgorithmlearning.md) + * [The Framwork 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) + * [FloodFill Algorithm in Detail](think\_like\_computer/flood\_fill.md) + * [Interval Scheduling: Interval Merging](think\_like\_computer/IntervalMerging.md) + * [Interval Scheduling: Intersections of Intervals](think\_like\_computer/IntervalIntersection.md) + * [String Multiplication](think\_like\_computer/string\_multiplication.md) + * [Pancake Soring Algorithm](think\_like\_computer/PancakesSorting.md) + * [Sliding Window Algorithm](think\_like\_computer/SlidingWindowTechnique.md) + * [Some Useful Bit Manipulations](think\_like\_computer/CommonBitManipulation.md) + * [Russian Doll Envelopes Problem](think\_like\_computer/RussianDollEnvelopes.md) + * [Recursion In Detail](data\_structure/RecursionInDetail.md) + * [Backtracking Solve Subset/Permutation/Combination](interview/Subset\_Permutation\_Combination.md) + * [Several counter-intuitive Probability Problems](think\_like\_computer/several\_counter\_intuitive\_probability\_problems.md) + * [Shuffle Algorithm](think\_like\_computer/Shuffle\_Algorithm.md) +* [IV. High Frequency Interview Problem](iv.-high-frequency-interview-problem/README.md) + * [How to Implement LRU Cache](interview/LRU\_algorithm.md) + * [How to Find Prime Number Efficiently](interview/Print\_PrimeNumbers.md) + * [How to Calculate Minimium Edit Distance](dynamic\_programming/EditDistance.md) + * [How to Solve Drop Water Problem](interview/Trapping\_Rain\_Water.md) * [How to Remove Duplicate From Sorted Sequence](interview/RemoveDuplicatesfromSortedArray.md) * [How to Find Longest Palindromic Substring](interview/TheLongestPalindromicSubstring.md) * [How to Reverse Linked List in K Group](interview/reverse-nodes-in-k-group.md) * [How to Check the Validation of Parenthesis](interview/valid-parentheses.md) - * [How to Find Missing Element](interview/missing_elements.md) + * [How to Find Missing Element](interview/missing\_elements.md) * [How to Pick Elements From a Arbitrary Sequence](interview/ReservoirSampling.md) * [How to use Binary Search](interview/UsingBinarySearchAlgorithm.md) * [How to Scheduling Seats](interview/Seatscheduling.md) - * [Union-Find Algorithm in Detail](think_like_computer/Union-find-Explanation.md) - * [Union-Find Application](think_like_computer/Union-Find-Application.md) + * [Union-Find Algorithm in Detail](think\_like\_computer/Union-find-Explanation.md) + * [Union-Find Application](think\_like\_computer/Union-Find-Application.md) * [Find Sebesquence With Binary Search](interview/findSebesquenceWithBinarySearch.md) * [Problems can be sloved by one line](interview/one-line-code-puzzles.md) * [How to Find Dup and Missing Element](interview/Find-Duplicate-and-Missing-Element.md) - * [How to Check Palindrom LinkedList](interview/check_palindromic_linkedlist.md) - -* V. Common Knowledge - * [Difference Between Process and Thread in Linux](common_knowledge/linuxProcess.md) - * [You Must Know About Linux Shell](common_knowledge/linuxshell.md) - * [You Must Know About Cookie and Session](common_knowledge/SessionAndCookie.md) - * [Cryptology Algorithm](common_knowledge/Cryptology.md) - * [Some Good Online Pratice Platforms](common_knowledge/OnlinePraticePlatform.md) + * [How to Check Palindrom LinkedList](interview/check\_palindromic\_linkedlist.md) +* [V. Common Knowledge](v.-common-knowledge/README.md) + * [Difference Between Process and Thread in Linux](common\_knowledge/linuxProcess.md) + * [You Must Know About Linux Shell](common\_knowledge/linuxshell.md) + * [You Must Know About Cookie and Session](common\_knowledge/SessionAndCookie.md) + * [Cryptology Algorithm](common\_knowledge/Cryptology.md) + * [Some Good Online Pratice Platforms](common\_knowledge/OnlinePraticePlatform.md) diff --git a/i.-dynamic-programming/README.md b/i.-dynamic-programming/README.md new file mode 100644 index 0000000000..db3b1d2f28 --- /dev/null +++ b/i.-dynamic-programming/README.md @@ -0,0 +1,2 @@ +# I. Dynamic Programming + diff --git a/ii.-data-structure/README.md b/ii.-data-structure/README.md new file mode 100644 index 0000000000..984a9dca03 --- /dev/null +++ b/ii.-data-structure/README.md @@ -0,0 +1,2 @@ +# II. Data Structure + diff --git a/iii.-algorithmic-thinking/README.md b/iii.-algorithmic-thinking/README.md new file mode 100644 index 0000000000..a857fa6d47 --- /dev/null +++ b/iii.-algorithmic-thinking/README.md @@ -0,0 +1,2 @@ +# III. Algorithmic thinking + diff --git a/iv.-high-frequency-interview-problem/README.md b/iv.-high-frequency-interview-problem/README.md new file mode 100644 index 0000000000..e4ced49a0e --- /dev/null +++ b/iv.-high-frequency-interview-problem/README.md @@ -0,0 +1,2 @@ +# IV. High Frequency Interview Problem + diff --git a/v.-common-knowledge/README.md b/v.-common-knowledge/README.md new file mode 100644 index 0000000000..44355da2e0 --- /dev/null +++ b/v.-common-knowledge/README.md @@ -0,0 +1,2 @@ +# V. Common Knowledge +