Skip to content

Latest commit

 

History

History
46 lines (41 loc) · 4.63 KB

ALGORITHMS.md

File metadata and controls

46 lines (41 loc) · 4.63 KB
Algorithm Group Content
Arrays Counters, Rotation, Sub-Arrays
Array Rotation Doug Mcllroy, Jon Bentley, Gries-Mills
Sub-Arrays Kadane's Algo, Sub-Array vs. Sub-Sequence, Circular Array, Running Product
List LinkedList CRUD operations, Merge, Cycle Detection, Intersection Point etc.
Stack Min Stack
Strings Lapindrome, CoDec, Parenthesis Validators
Tree Binary Tree, LCA Detection
Util Content
Formulaes LCM, HCF, MidPoint, Special Number (Prime, Armstrong, Neon), Raise-To etc.
ArrayOps Swap elements (singular, in blocks), Reverse, Deep Copy, Print, isEquals etc.
LinkedListOps Insert, Remove, Reverse, Swap (in pairs), Increment, Re-Order etc.
NumberOps Count Digits, Reverse, Count Primes, Convert Decimal to Binary (& vica-versa) etc.
StringOps Convert to Integer, Find Permutations, Count chars etc.
Requirement Notable(s)
Linear Search Basic O(n) traversal
Binary Search Generic, Iterative, Recursive
Majority Element Finder Boyer Moore Voting
Median Finder Quick Select, Priority Queue
Next Greater Element Finder Narayana Pandit Permutation Algorithm
Peak Element Search Bitonic Series, Linear & Logarithmic time-complexity
Duplicate or Missing Element Search Pigeonhole Principle
Technique Characteristics
Naive In-place, randomized, un-even probability.
Fisher Yates Knuth Shuffle In-place, randomized, equal probability, asymptotically optimal.
Sattolo Shuffle In-place, randomized, equal probability, asymptotically optimal, one cycle only.
Domain Notable(s)
Finite Range Counting Sort, Radix Sort, Bucket Sort, Polish National Flags - for 2 groups, Dutch National Flags - for 3 groups
Small Dataset Bubble Sort, Insertion Sort, Selection Sort
General Purpose Quick Sort, Merge Sort, Heap Sort
Advanced Wave Sort