|
| 1 | +<div align="center"> |
| 2 | + <br> |
| 3 | +<br> |
| 4 | + <br> |
| 5 | +<br> |
| 6 | +<img width="400" height="270" src="https://cdn.jsdelivr.net/npm/@programming-languages-logos/cpp@0.0.2/cpp.svg"> |
| 7 | +<br> |
| 8 | +<br> |
| 9 | + <br> |
| 10 | +<br> |
| 11 | + <br> |
| 12 | +<br> |
| 13 | +<img src="https://cdn.abranhe.com/projects/algorithms/algorithms.svg" width="400px"> |
| 14 | + <br> |
| 15 | +<br> |
| 16 | + <p>All ▲lgorithms implemented in C++</p> |
| 17 | +<a href="https://algorithms.abranhe.com"><img src="https://cdn.abranhe.com/projects/algorithms/badge.svg"></a> |
| 18 | +<a href="https://github.com/abranhe/algorithms/blob/master/license"><img src="https://img.shields.io/github/license/abranhe/algorithms.svg" /></a> |
| 19 | +<a href="https://cash.me/$abranhe"><img src="https://cdn.abranhe.com/badges/cash-me.svg"></a> |
| 20 | +<a href="https://www.patreon.com/abranhe"><img src="https://cdn.abranhe.com/badges/patreon.svg" /></a> |
| 21 | +<a href="https://paypal.me/abranhe/10"><img src="https://cdn.abranhe.com/badges/paypal.svg" /></a> |
| 22 | +<br> |
| 23 | +<br> |
| 24 | +<a href="https://allalgorithms.com"><code>allalgorithms.com</code></a> |
| 25 | +</div> |
| 26 | + |
| 27 | + |
| 28 | +## Contents |
| 29 | + |
| 30 | +- [Artificial Intelligence](#artificial-intelligence) |
| 31 | +- [Backtracking](#backtracking) |
| 32 | +- [Bit Manipulation](#bit-manipulation) |
| 33 | +- [Cellular Automaton](#cellular-automaton) |
| 34 | +- [Ciphers](#ciphers) |
| 35 | +- [Computational Geometry](#computational-geometry) |
| 36 | +- [Cryptography](#cryptography) |
| 37 | +- [Data Structures](#data-structures) |
| 38 | +- [Divide and conquer](#divide-and-conquer) |
| 39 | +- [Dynamic Programming](#dynamic-programming) |
| 40 | +- [Gaming Theory](#gaming-theory) |
| 41 | +- [Graphs](#graphs) |
| 42 | +- [Greedy Algorithms](#greedy-algorithms) |
| 43 | +- [Math](#math) |
| 44 | +- [Networking](#networking) |
| 45 | +- [Numerical Analysis](#numerical-analysis) |
| 46 | +- [Operating system](#operating-system) |
| 47 | +- [Randomized Algorithms](#randomized-algorithms) |
| 48 | +- [Searches](#searches) |
| 49 | +- [Selections Algorithms](#selections-algorithms) |
| 50 | +- [Sorting](#sorting) |
| 51 | +- [Strings](#strings) |
| 52 | +- [Online Challenges](#online-challenges) |
| 53 | +- [Others](#others) |
| 54 | + |
| 55 | +## Data Structures |
| 56 | + |
| 57 | +- Queue |
| 58 | +- [Circular Buffer](data-structures/queue/circular_buffer.cpp) |
| 59 | +- [Queue](data-structures/queue/queue.cpp) |
| 60 | +- Stack |
| 61 | +- [Stack](data-structures/stack/stack.cpp) |
| 62 | + |
| 63 | +## Dynamic Programming |
| 64 | + |
| 65 | +- [Coin Change](dynamic-programming/coin_change.cpp) |
| 66 | +- [Edit Distance](dynamic-programming/edit_distance.cpp) |
| 67 | +- [Knapsack](dynamic-programming/knapsack.cpp) |
| 68 | +- [Longest common subsequence](dynamic-programming/lcs.cpp) |
| 69 | +- [Longest Path](dynamic-programming/longest_path.cpp) |
| 70 | +- [Ways to Cover](dynamic-programming/ways_to_cover.cpp) |
| 71 | + |
| 72 | +## Graphs |
| 73 | + |
| 74 | +- [Bellman Ford](graphs/bellman_ford.cpp) |
| 75 | +- [Breadth-first search](graphs/bfs.cpp) |
| 76 | +- [Count Disconnected Components](graphs/count_disconnected_components.cpp) |
| 77 | +- [Depth-first search](graphs/dfs.cpp) |
| 78 | +- [Dijkstra](graphs/dijkstra.cpp) |
| 79 | +- [Floyed Warshall](graphs/floyd_warshall.cpp) |
| 80 | +- [Prims Adjacency List](graphs/prims_adjacency_list.cpp) |
| 81 | + |
| 82 | +## Math |
| 83 | + |
| 84 | +- [Collatz](math/collatz.cpp) |
| 85 | +- [Euclids Greatest common divisor](math/euclids_gcd.cpp) |
| 86 | +- [Factorial](math/factorial.cpp) |
| 87 | +- [Greatest common divisor of array](math/gcd_of_array.cpp) |
| 88 | +- [Least common multiple of array](math/lcm_of_array.cpp) |
| 89 | +- [Lucky Numbers](math/lucky_numbers.cpp) |
| 90 | +- [Modular Exponentiations](math/modular_exponentiations.cpp) |
| 91 | +- [nth Fibonacci Number using Goldenratio](math/nth_fibonacci_using_goldenratio.cpp) |
| 92 | + |
| 93 | +## Searches |
| 94 | + |
| 95 | +- [Binary Search](searches/binary_search.cpp) |
| 96 | +- [Jump Search](searches/jump_search.cpp) |
| 97 | +- [Linear Search](searches/linear_search.cpp) |
| 98 | +- [Ternary Search](searches/ternary_search.cpp) |
| 99 | + |
| 100 | +## Sorting |
| 101 | + |
| 102 | +- [Bubble Sort](sorting/bubble_sort.cpp) |
| 103 | +- [Heap Sort](sorting/heap_sort.cpp) |
| 104 | +- [Heap Sort without vectors](sorting/heap_sort_without_vectors.cpp) |
| 105 | +- [Insertion Sort](sorting/insertion_sort.cpp) |
| 106 | +- [Merge Sort](sorting/merge_sort.cpp) |
| 107 | +- [Quick Sort](sorting/quick_sort.cpp) |
| 108 | +- [Selection Sort](sorting/selection_sort.cpp) |
| 109 | +- [Sort Vector](sorting/sort_vector.cpp) |
| 110 | +- [Tree Sort](sorting/tree_sort.cpp) |
| 111 | + |
| 112 | +## Strings |
| 113 | + |
| 114 | +- [Anagram Check](strings/anagram_check.cpp) |
| 115 | +- [Lexicographic Ranking](strings/lexicographic_ranking.cpp) |
| 116 | +- [Longest Palindrome Subset](strings/longest_palindrome_subset.cpp) |
| 117 | +- [Naive Search](strings/naive_search.cpp) |
| 118 | +- [Permutations of string](strings/permutations_of_string.cpp) |
| 119 | +- [Print duplicate string](strings/print_duplicate_string.cpp) |
| 120 | +- [Rabin Karp](strings/rabin_karp.cpp) |
| 121 | +- [Remove Adjacent Duplicates](strings/remove_adjacent_duplicates.cpp) |
| 122 | +- [Remove Duplicates](strings/remove_duplicates.cpp) |
| 123 | +- [Reverse String](strings/reverse_string.cpp) |
| 124 | + |
| 125 | +## License |
| 126 | + |
| 127 | +This work is released under [MIT License](https://github.com/abranhe/algorithms/blob/master/liceense) |
| 128 | + |
| 129 | +[](https://github.com/abranhe/algorithms/blob/master/license) |
| 130 | + |
| 131 | +To the extent possible under law, [Carlos Abraham](https://go.abranhe.com/github) has waived all copyright and related or neighboring rights to this work. |
| 132 | + |
| 133 | + |
| 134 | +<div align="center"> |
| 135 | +<a href="https://github.com/abranhe/algorithms"> |
| 136 | +<img src="https://cdn.abranhe.com/projects/algorithms/logo.svg" width="50px"> |
| 137 | +</a> |
| 138 | + <br> |
| 139 | +</div> |
0 commit comments