mirror of
https://hub.njuu.cf/TheAlgorithms/C-Plus-Plus.git
synced 2023-10-11 13:05:55 +08:00
e2bf654e82
* fix: remove memory leak in stack * style: use camelCase * style: simplify logic * style: rename stack.h to stack.hpp * updating DIRECTORY.md * clang-format and clang-tidy fixes for2205c6f1
* fix: remove redundant file name Co-authored-by: David Leal <halfpacho@gmail.com> * clang-format and clang-tidy fixes fora080aaa2
* refactor: use std::shared_ptr * fix: use C++11 * chore: synchronize with master (#2) * chore: fix Markdown formatting in `dynamic_programming/kadane2.cpp` (#2276) * docs: fix grammatical errors and typos (#2201) * docs: fix grammatical errors and typos * compilation error fixed * Revert "compilation error fixed" This reverts commit0083cbfd1a
. * feat: added physics directory and ground to ground projectile motion algorithm (#2279) * feat: added physics folder, ground to ground projectile motion calculations * feat: added max height function * fix: bug in angle calculations * test: added test cases * docs: added comments to test case variables * docs: added comments to calculations * fix: changed floats to doubles * updating DIRECTORY.md * Update physics/ground_to_ground_projectile_motion.cpp Co-authored-by: David Leal <halfpacho@gmail.com> * chore: add missing namespace * rerun checks Co-authored-by: David <Panquesito7@users.noreply.github.com> Co-authored-by: David Leal <halfpacho@gmail.com> * docs: updated a logically wrong doc comment (#2329) * feat: add CMakeLists to the `divide_and_conquer` directory (#2072) * fix: stairs pattern not printing slash (#2111) when we propose 2 backslash then it doesn't take it as a comment and gets printed Co-authored-by: David Leal <halfpacho@gmail.com> * fix: use FreeGlut newest GitHub link (#2397) * updating DIRECTORY.md * fix: use FreeGlut newest GitHub link * chore(fix): `data_strcutres` -> `data_structures` (#2399) * feat: add Find non repeating number implementation (#2061) * add find_single_number * add fix issues * remove .vscode * add .vscode * Update .vscode/settings.json Co-authored-by: David Leal <halfpacho@gmail.com> * chore(fix): minor issues Co-authored-by: David Leal <halfpacho@gmail.com> * [feat/docs]: improve the `quick_sort.cpp` algorithm (#2396) * [feat/docs]: improve the `quick_sort.cpp`... ...algorithm implementation. * clang-format and clang-tidy fixes for 40c858ba * chore(fix): add original author * updating DIRECTORY.md * chore: update Discord links (#2407) * docs: remove unneeded Markdown header * feat: improve the Awesome Workflow (#2408) * fix: Awesome Workflow issues Thanks to @tjgurwara99 for the original fix: TheAlgorithms/C#1176 * chore: apply suggestions from code review Co-authored-by: Taj <tjgurwara99@users.noreply.github.com> * feat: various improvements * chore: apply suggestions from code review Co-authored-by: Taj <tjgurwara99@users.noreply.github.com> * chore: remove LGTM and fix... ...CodeQL badges. * docs: add guide on integrating CMake (#2410) Taken from TheAlgorithms/C#1163 * updating DIRECTORY.md Co-authored-by: Daemon <90456722+Daemon19@users.noreply.github.com> Co-authored-by: aadarshkt <72285744+aadarshkt@users.noreply.github.com> Co-authored-by: Focus <65309793+Focusucof@users.noreply.github.com> Co-authored-by: David <Panquesito7@users.noreply.github.com> Co-authored-by: David Leal <halfpacho@gmail.com> Co-authored-by: Arjit Malik <arjitmalik2001@gmail.com> Co-authored-by: Harsh Singh <94822101+harshsingh510@users.noreply.github.com> Co-authored-by: Ravi Dev Pandey <62198564+literalEval@users.noreply.github.com> Co-authored-by: Mehmet <110852769+walterwhite351@users.noreply.github.com> Co-authored-by: Taj <tjgurwara99@users.noreply.github.com> Co-authored-by: github-actions[bot] <github-actions@users.noreply.github.com> * docs: update authors and include comments apply suggestions of @Panquesito7 Co-authored-by: David Leal <halfpacho@gmail.com> * style: apply clang-format * clang-format and clang-tidy fixes forb35b7214
* style: make display and isEmptyStack const * tests: remove test_stack_legacy.cpp * style: throw invalid_argument from top and pop if stack empty * updating DIRECTORY.md * style: add missing include docs, remove cassert * style: use assert macro, document includes * fix: use const reference in lambdas in display and toVector * style: remove shared_ptr from traverse Co-authored-by: David Leal <halfpacho@gmail.com> Co-authored-by: Daemon <90456722+Daemon19@users.noreply.github.com> Co-authored-by: aadarshkt <72285744+aadarshkt@users.noreply.github.com> Co-authored-by: Focus <65309793+Focusucof@users.noreply.github.com> Co-authored-by: Arjit Malik <arjitmalik2001@gmail.com> Co-authored-by: Harsh Singh <94822101+harshsingh510@users.noreply.github.com> Co-authored-by: Ravi Dev Pandey <62198564+literalEval@users.noreply.github.com> Co-authored-by: Mehmet <110852769+walterwhite351@users.noreply.github.com> Co-authored-by: Taj <tjgurwara99@users.noreply.github.com> Co-authored-by: github-actions[bot] <github-actions@users.noreply.github.com>
37 KiB
37 KiB
Backtracking
- Graph Coloring
- Knight Tour
- Magic Sequence
- Minimax
- N Queens
- N Queens All Solution Optimised
- Nqueen Print All Solutions
- Rat Maze
- Subarray Sum
- Subset Sum
- Sudoku Solver
- Wildcard Matching
Bit Manipulation
- Count Bits Flip
- Count Of Set Bits
- Count Of Trailing Ciphers In Factorial N
- Find Non Repeating Number
- Hamming Distance
- Set Kth Bit
Ciphers
- A1Z26 Cipher
- Atbash Cipher
- Base64 Encoding
- Caesar Cipher
- Elliptic Curve Key Exchange
- Hill Cipher
- Morse Code
- Uint128 T
- Uint256 T
- Vigenere Cipher
- Xor Cipher
Cpu Scheduling Algorithms
Data Structures
- Avltree
- Binary Search Tree
- Binary Search Tree2
- Binaryheap
- Bloom Filter
- Circular Queue Using Linked List
- Cll
- Disjoint Set
- Doubly Linked List
- Dsu Path Compression
- Dsu Union Rank
- Linked List
- Linkedlist Implentation Usingarray
- List Array
- Morrisinorder
- Queue
- Queue Using Array
- Queue Using Array2
- Queue Using Linked List
- Queue Using Linkedlist
- Queue Using Two Stacks
- Rb Tree
- Reverse A Linked List
- Skip List
- Sparse Table
- Stack
- Stack Using Array
- Stack Using Linked List
- Stack Using Queue
- Test Queue
- Test Stack
- Test Stack Students
- Tree
- Tree 234
- Trie Modern
- Trie Tree
- Trie Using Hashmap
Divide And Conquer
Dynamic Programming
- 0 1 Knapsack
- Abbreviation
- Armstrong Number
- Bellman Ford
- Catalan Numbers
- Coin Change
- Coin Change Topdown
- Cut Rod
- Edit Distance
- Egg Dropping Puzzle
- Fibonacci Bottom Up
- Floyd Warshall
- House Robber
- Kadane
- Kadane2
- Longest Common String
- Longest Common Subsequence
- Longest Increasing Subsequence
- Longest Increasing Subsequence (Nlogn)
- Longest Palindromic Subsequence
- Matrix Chain Multiplication
- Minimum Edit Distance
- Palindrome Partitioning
- Partition Problem
- Searching Of Element In Dynamic Array
- Shortest Common Supersequence
- Tree Height
- Word Break
Geometry
Graph
- Bidirectional Dijkstra
- Breadth First Search
- Bridge Finding With Tarjan Algorithm
- Connected Components
- Connected Components With Dsu
- Cycle Check Directed Graph
- Depth First Search
- Depth First Search With Stack
- Dijkstra
- Hamiltons Cycle
- Hopcroft Karp
- Is Graph Bipartite
- Is Graph Bipartite2
- Kosaraju
- Kruskal
- Lowest Common Ancestor
- Max Flow With Ford Fulkerson And Edmond Karp Algo
- Prim
- Topological Sort
- Topological Sort By Kahns Algo
- Travelling Salesman Problem
Graphics
Greedy Algorithms
Hashing
Machine Learning
- A Star Search
- Adaline Learning
- Kohonen Som Topology
- Kohonen Som Trace
- Neural Network
- Ordinary Least Squares Regressor
- Vector Ops
Math
- Approximate Pi
- Area
- Armstrong Number
- Binary Exponent
- Binomial Calculate
- Check Amicable Pair
- Check Factorial
- Check Prime
- Complex Numbers
- Double Factorial
- Eulers Totient Function
- Extended Euclid Algorithm
- Factorial
- Fast Power
- Fibonacci
- Fibonacci Fast
- Fibonacci Large
- Fibonacci Matrix Exponentiation
- Fibonacci Sum
- Finding Number Of Digits In A Number
- Gcd Iterative Euclidean
- Gcd Of N Numbers
- Gcd Recursive Euclidean
- Integral Approximation
- Integral Approximation2
- Inv Sqrt
- Large Factorial
- Large Number
- Largest Power
- Lcm Sum
- Least Common Multiple
- Linear Recurrence Matrix
- Magic Number
- Miller Rabin
- Modular Division
- Modular Exponentiation
- Modular Inverse Fermat Little Theorem
- Modular Inverse Simple
- N Bonacci
- N Choose R
- Ncr Modulo P
- Number Of Positive Divisors
- Perimeter
- Power For Huge Numbers
- Power Of Two
- Prime Factorization
- Prime Numbers
- Primes Up To Billion
- Realtime Stats
- Sieve Of Eratosthenes
- Sqrt Double
- String Fibonacci
- Sum Of Binomial Coefficient
- Sum Of Digits
- Vector Cross Product
- Volume
Numerical Methods
- Babylonian Method
- Bisection Method
- Brent Method Extrema
- Composite Simpson Rule
- Durand Kerner Roots
- False Position
- Fast Fourier Transform
- Gaussian Elimination
- Golden Search Extrema
- Gram Schmidt
- Inverse Fast Fourier Transform
- Lu Decompose
- Lu Decomposition
- Midpoint Integral Method
- Newton Raphson Method
- Ode Forward Euler
- Ode Midpoint Euler
- Ode Semi Implicit Euler
- Qr Decompose
- Qr Decomposition
- Qr Eigen Values
- Rungekutta
- Successive Approximation
Operations On Datastructures
- Array Left Rotation
- Array Right Rotation
- Circular Linked List
- Circular Queue Using Array
- Get Size Of Linked List
- Inorder Successor Of Bst
- Intersection Of Two Arrays
- Reverse A Linked List Using Recusion
- Reverse Binary Tree
- Selectionsortlinkedlist
- Trie Multiple Search
- Union Of Two Arrays
Others
- Buzz Number
- Decimal To Binary
- Decimal To Hexadecimal
- Decimal To Roman Numeral
- Easter
- Fast Integer Input
- Happy Number
- Iterative Tree Traversals
- Kadanes3
- Lru Cache
- Matrix Exponentiation
- Palindrome Of Number
- Paranthesis Matching
- Pascal Triangle
- Postfix Evaluation
- Primality Test
- Recursive Tree Traversal
- Smallest Circle
- Sparse Matrix
- Spiral Print
- Stairs Pattern
- Tower Of Hanoi
- Vector Important Functions
Physics
Probability
Range Queries
- Fenwick Tree
- Heavy Light Decomposition
- Mo
- Persistent Seg Tree Lazy Prop
- Prefix Sum Array
- Segtree
- Sparse Table
Search
- Binary Search
- Exponential Search
- Fibonacci Search
- Floyd Cycle Detection Algo
- Hash Search
- Interpolation Search
- Interpolation Search2
- Jump Search
- Linear Search
- Median Search
- Median Search2
- Saddleback Search
- Sublist Search
- Ternary Search
- Text Search
Sorting
- Bead Sort
- Binary Insertion Sort
- Bitonic Sort
- Bogo Sort
- Bubble Sort
- Bucket Sort
- Cocktail Selection Sort
- Comb Sort
- Count Inversions
- Counting Sort
- Counting Sort String
- Cycle Sort
- Dnf Sort
- Gnome Sort
- Heap Sort
- Insertion Sort
- Library Sort
- Merge Insertion Sort
- Merge Sort
- Non Recursive Merge Sort
- Numeric String Sort
- Odd Even Sort
- Pancake Sort
- Pigeonhole Sort
- Quick Sort
- Quick Sort 3
- Radix Sort
- Radix Sort2
- Random Pivot Quick Sort
- Recursive Bubble Sort
- Selection Sort Iterative
- Selection Sort Recursive
- Shell Sort
- Shell Sort2
- Slow Sort
- Strand Sort
- Swap Sort
- Tim Sort
- Wave Sort
- Wiggle Sort