/DSA-Codes

Implementations of Data Structures and Algorithms by me

Primary LanguageJavaMIT LicenseMIT

DSA-Codes

Implementations of Data Structures and Algorithms by me


The list of algorithms shall be regularly updated for quick viewing
  1. Native String Matching Algorithm
  2. Binary Search Tree
  3. Singly Linked List
  4. Rabin Karp String Matching Algorithm
  5. Algorith for Graph as Adjacency Matrix
  6. Sieve of Eratosthenes
  7. Algorith for Graph as Adjacency List
  8. Depth First Search Algorithm using Stack
  9. Breadth First Search Algorithm using Queue
  10. Binary Search - Interatively

List of must-know Data Structures & Algorithms for anyone planning for ICPC

  1. Interval Tree
  2. Binary Indexed Tree
  3. Fast Modulo Multiplication (Exponential Squaring)
  4. Heuristic Algorithms
  5. KMP string searching
  6. Manacher's Algorithm
  7. Union Find/Disjoint Set
  8. Trie
  9. Prime Miller Rabin
  10. Matrix Recurrence + Fast Modulo Multiplication for counting
  11. Stable Marriage Problem
  12. Extended Euclid's algorithm
  13. Ternary Search
  14. Fast Fourier Transform for fast polynomial multiplication
  15. Djikstra's algorithm, Bellman-ford algorithm, Floyd-Warshall Algorithm
  16. Prim's Algorithm, Kruskal's Algorithm
  17. RMQ, LCA
  18. Flow related algorithms, assignment problem, Hungarian algorithm
  19. Bipartite matching algorithms
  20. Heavy-light decomposition
  21. Sweep line algorithm
  22. Z algorithm
  23. Convex Hull
  24. Suffix Arrays
  25. LCP
  26. Suffix Tree
  27. Gaussian Elimination
  28. Numerical Integration/Differentiation
  29. Line Clipping
  30. Advanced Maths Ad-Hoc problems
  31. Aho–Corasick string matching algorithm
  32. Rabin-Karp algorithm
  33. Heavy Light decomposition in trees
  34. Inverse Modulo operations
  35. Pollard Rho Integer Factorization
  36. Catalan Numbers
  37. Euclid's GCD Algorithm
  38. Extended Euclid's algorithm
  39. Binary Search, Ternary Search
  40. Fast Fourier Transformation for fast polynomial multiplication
  41. Graph algorithms - BFS, DFS, finding connected components
  42. Djikstra's algorithm, Bellman-ford algorithm, Floyd-Warshall Algorithm
  43. Prim's Algorithm, Kruskal's Algorithm
  44. RMQ, LCA
  45. Flow related algorithms, assignment problem, Hungarian algorithm
  46. Bipartite matching algorithms
  47. Heavy-light decomposition
  48. Sweep line algorithm
  49. Z algorithm

#Review Please send in any suggestions, and improvements.
Also tell me if you want a certain algorithm included which is not yet in any of the above lists.