All â–²lgorithms implemented in C++



allalgorithms.com
## Contents You can find the All â–²lgorithms categories at [algorithms.com/categories](https://algorithms.com/categories) - [Artificial intelligence](#artificial-intelligence) - [Backtracking](#backtracking) - [Bit manipulation](#bit-manipulation) - [Cellular automaton](#cellular-automaton) - [Computational geometry](#computational-geometry) - [Cryptography](#cryptography) - [Data structures](#data-structures) - [Divide and conquer](#divide-and-conquer) - [Dynamic programming](#dynamic-programming) - [Gaming theory](#gaming-theory) - [Graphs](#graphs) - [Greedy algorithms](#greedy-algorithms) - [Math](#math) - [Networking](#networking) - [Numerical analysis](#numerical-analysis) - [Online challenges](#online-challenges) - [Randomized algorithms](#randomized-algorithms) - [Serches](#serches) - [Selections](#selections) - [Sorting](#sorting) - [Strings](#strings) - [No category](#no-category) ## Artificial intelligence - [Togasat](artificial-intelligence/togasat.cpp) ## Backtracking - [Crossword puzzle](backtracking/crossword_puzzle.cpp) ## Data structures - [Pairs with difference k](data-structures/hashmaps/pairs_with_difference_k.cpp) - [Largest rectangle area](data-structures/largest_rectangle_area.cpp) - [Linkedlist adt](data-structures/linkedlist/linkedlist_adt.cpp) - [Circular buffer](data-structures/queue/circular_buffer.cpp) - [Queue](data-structures/queue/queue.cpp) - [Stack](data-structures/stack/stack.cpp) ## Dynamic programming - [Coin change](dynamic-programming/coin_change.cpp) - [Edit distance](dynamic-programming/edit_distance.cpp) - [Fibonacci number](dynamic-programming/fibonacci_number.cpp) - [Knapsack](dynamic-programming/knapsack.cpp) - [Lcs](dynamic-programming/lcs.cpp) - [Lis](dynamic-programming/lis.cpp) - [Longest path](dynamic-programming/longest_path.cpp) - [Matrix chain multiplication](dynamic-programming/matrix_chain_multiplication.cpp) - [Rod cutting](dynamic-programming/rod_cutting.cpp) - [Ways to cover](dynamic-programming/ways_to_cover.cpp) ## Graphs - [Bellman ford](graphs/bellman_ford.cpp) - [Bfs](graphs/bfs.cpp) - [Count diconnected components](graphs/count_diconnected_components.cpp) - [Dfs](graphs/dfs.cpp) - [Dijkstra](graphs/dijkstra.cpp) - [Floyd warshall](graphs/floyd_warshall.cpp) - [Prims adjacency list](graphs/prims_adjacency_list.cpp) - [Toposort](graphs/toposort.cpp) ## Math - [All factors of a numbe r](math/all_factors_of_a_numbe_r.cpp) - [Armstrong number](math/armstrong_number.cpp) - [Bshuffll](math/bshuffll.cpp) - [Chefres](math/chefres.cpp) - [Collatz](math/collatz.cpp) - [Euclids gcd](math/euclids_gcd.cpp) - [Eulers totient](math/eulers_totient.cpp) - [Factorial loop](math/factorial_loop.cpp) - [Factorial](math/factorial.cpp) - [Gcd of array](math/gcd_of_array.cpp) - [Hoax no](math/hoax_no.cpp) - [Kadence](math/kadence.cpp) - [Lcm of array](math/lcm_of_array.cpp) - [Lucky numbers](math/lucky_numbers.cpp) - [Magic square](math/magic_square.cpp) - [Modular exponentiation](math/modular_exponentiation.cpp) - [Nth fibonacci using goldenratio](math/nth_fibonacci_using_goldenratio.cpp) - [Pascals triangle](math/pascals_triangle.cpp) - [Sieve of eratosthenes](math/sieve_of_eratosthenes.cpp) - [Slicker algorithm](math/slicker_algorithm.cpp) - [Sphenic n o](math/sphenic_n_o.cpp) - [T ermo conv](math/t_ermo_conv.cpp) ## Searches - [Binary search](searches/binary_search.cpp) - [Exponential search](searches/exponential_search.cpp) - [Jump search](searches/jump_search.cpp) - [Linear search](searches/linear_search.cpp) - [Ternary search](searches/ternary_search.cpp) ## Sorting - [Bogo sort](sorting/bogo_sort.cpp) - [Bubble sort](sorting/bubble_sort.cpp) - [Counting sort](sorting/counting_sort.cpp) - [Gnome sort](sorting/gnome_sort.cpp) - [Heap sort without vectors](sorting/heap_sort_without_vectors.cpp) - [Heap sort](sorting/heap_sort.cpp) - [Insertion sort](sorting/insertion_sort.cpp) - [Merge sort](sorting/merge_sort.cpp) - [Quick sort](sorting/quick_sort.cpp) - [Radix sort](sorting/radix_sort.cpp) - [Rank sort](sorting/rank_sort.cpp) - [Selection sort](sorting/selection_sort.cpp) - [Shaker sort](sorting/shaker_sort.cpp) - [Shell sort](sorting/shell_sort.cpp) - [Sort vector](sorting/sort_vector.cpp) - [Stooge sort](sorting/stooge_sort.cpp) - [Tree sort](sorting/tree_sort.cpp) ## Strings - [Anagram check](strings/anagram_check.cpp) - [Lexicographic ranking](strings/lexicographic_ranking.cpp) - [Longest palindrome subset](strings/longest_palindrome_subset.cpp) - [Naive search](strings/naive_search.cpp) - [Permutations of string](strings/permutations_of_string.cpp) - [Print duplicate string](strings/print_duplicate_string.cpp) - [Rabin carp](strings/rabin_carp.cpp) - [Rabin karp](strings/rabin_karp.cpp) - [Remove adjacent duplicates](strings/remove_adjacent_duplicates.cpp) - [Remove duplicates](strings/remove_duplicates.cpp) - [Reverse string](strings/reverse_string.cpp) - [Z algorithm](strings/z_algorithm.cpp) ## Maintainers |[![1][1-avatar]][1]|[![2][2-avatar]][2]| | :-: | :-: | | [Carlos Abraham][1] | [Christian Bender][2] | ## License This work is released under [MIT License][MIT] [![MIT IMG][MIT-logo]][MIT] 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.

[MIT]: https://github.com/abranhe/algorithms/blob/master/license [MIT-logo]: https://cdn.abranhe.com/projects/algorithms/mit-license.png [1]: https://github.com/abranhe [1-avatar]: https://avatars3.githubusercontent.com/u/21347264?s=50 [2]: https://github.com/christianbender [2-avatar]: https://avatars3.githubusercontent.com/u/23243382?s=50