This directory contains pseudocode for various algorithms, aiding in the development of better algorithms and optimizing them for specific scenarios.
The repository follows a strict hierarchy, with directories for different types of algorithms:
Algorithms
├── Search
│ ├── LinearSearch
│ ├── BinarySearch
│ └── PolynomialSearch
│
├── Sort
│ ├── BubbleSort
│ ├── SelectionSort
│ ├── InsertionSort
│ ├── QuickSort
│ ├── MergeSort
│ ├── HeapSort
│ ├── ShellSort
│ └── RadixSort
│
├── PathFinding
│ ├── DijkstrasAlgorithm
│ └── AStarAlgorithm
│
├── DynamicProgrammingAlgorithms
├── GreedyAlgorithms
├── RecursiveAlgorithms
├── MachineLearningAlgorithms
└── EncryptionDecryptionAlgorithms
The README.md
of algorithm will typically contain:
- Introduction
- Pseudocode
- Time Complexity
- Space Complexity
- Variants
- Use Cases
- Best Practices
- References
Symbol | Name | Case |
---|---|---|
Ω | Big Omega | Best Case |
Θ | Big Theta | Average Case |
O | Big O | Worst Case |
Note
Ensure the time complexity order follows: best, average, worst.