vimwiki/tech/algorithms.wiki

109 lines
2.0 KiB
Plaintext

= Algorithms and Data structures =
Different ways to store and operate on data, with differing efficiency
== Sequential Data Structures ==
* [[array|Array]]
* [[vector|Vector]]
* [[linked_list|Linked List]]
* [[stack|Stack]]
* [[queue|Queue]]
* [[skip_list|Skip list]]
* [[hash_table|Hash Table]]
* [[DHT|Distributed Hash Table]]
== Non sequential Data Structures ==
* [[binary_tree|Binary Tree]]
* [[trie|Trie]]
* [[graph|Graph]]
* [[b_tree|B-Tree]]
* [[red_black_tree|Red Black Tree]]
* [[splay_tree|Splay Tree]]
* [[avl_tree|AVL Tree]]
* [[kd_tree|KD Tree]]
* [[Heap]]
- [[Fibonacci_heap]]
* [[priority_queue|Priority Queue]]
* [[merkle_tree|Merkle Tree]]
== Probabilistic Data Structures ==
* [[Bloom_filter|Bloom Filter]]
== Common Algorithms ==
=== Graph and Tree ===
* [[BFS]]
* [[DFS]]
* [[Dijkstra]]
* [[Bellman-Ford]]
=== Strings ===
* [[Damerau-Levenshtein]]
== Sorting ==
* [[quicksort|Quicksort]]
* [[mergesort|Mergesort]]
* [[heapsort|Heapsort]]
* [[radix|Radix]]
* [[bucket|Bucket]]
* [[counting|Counting]]
== Paradigms ==
* [[simple_recurison|Simple Recursion]]
* [[divide_and_conquer|Divide and Conquer]]
* [[dynamic_programming|Dynamic Programming]]
* [[greedy_algorithm|Greedy Algorithms]]
* [[brute_force|Brute Force]]
* [[randomized_algorithm|Randomized Algorithms]]
* [[genetic|Genetic Algorithms]]
* [[swarm|Swarm Inteligence]]
* [[machine_learning|Machine Learning]]
* [[neural|Neural Networks]]
== Graphics ==
* [[gradiant|Gradiant]]
* [[prewitt-operator|Prewitt-operator]]
* [[light_transport|Light Transport]]
== Programming patterns ==
=== Creational ===
* [[singleton]]
* [[prototype]]
* [[builder]]
=== Structural ===
* [[composite]]
=== Behavioral ===
* [[factory]]
* [[facade]]
* [[proxy]]
* [[iterator]]
* [[observer]]
* [[mediator]]
* [[state]]
== Common operations ==
* [[gcd]] - Find the GCD of two numbers
* [[modular_exponentiation|Modular Exponentiation]] - Solve a^b mod n
== Misc ==
* [[p_vs_np]]
* [[quadratic_probing]]
[[index]]