## Sorting algorithms - used to arrange data in a specific order. Bubble Sort Insertion Sort Selection Sort Merge Sort Quick Sort ## Search algorithms - used to find a specific item in a dataset. Linear Search Binary Search Depth-First Search (DFS) Breadth-First Search (BFS) A* Search ## Graph algorithms - used to analyze relationships between nodes in a graph. Dijkstra's Algorithm Kruskal's Algorithm Prim's Algorithm Bellman-Ford Algorithm Floyd-Warshall Algorithm ## Computational algorithms - used to solve complex mathematical problems. Newton-Raphson Method Monte Carlo Method Binary Search Bisection Method Secant Method ## Machine learning algorithms - used to analyze data and make predictions. Linear Regression Logistic Regression Decision Tree Random Forest Support Vector Machine (SVM) ## Genetic algorithms - used to optimize solutions based on natural selection principles. Travelling Salesman Problem Knapsack Problem Queen's Problem Job Scheduling Problem Boolean Function Optimization ## Encryption algorithms - used to encode and decode data for security purposes. Advanced Encryption Standard (AES) Data Encryption Standard (DES) Rivest–Shamir–Adleman (RSA) Algorithm Blowfish Algorithm Twofish Algorithm ## Compression algorithms - used to reduce the size of data for storage or transmission. Huffman Coding Arithmetic Coding Lempel-Ziv-Welch (LZW) Algorithm Run-Length Encoding (RLE) Burrows-Wheeler Transform (BWT) ## Pathfinding algorithms - used to find the shortest path between two points. Dijkstra's Algorithm A* Search Bellman-Ford Algorithm Floyd-Warshall Algorithm Bidirectional Search ## Divide and conquer algorithms - used to break down a problem into smaller sub-problems. Merge Sort Quick Sort Binary Search Strassen's Algorithm Karatsuba Algorithm