prakashn27 / Online-judges

Practice Problems from CodeChef, SPOJ.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Practice Problems

Check List of Common algorithms in Competitive programming:

Source: ####Graph algorithms

  • Breadth first search(BFS)
  • Depth first search(DFS)
  • Strongly connected components(SCC)
  • Dijkstra
  • Floyd-Warshall
  • Minimum spanning tree(MST)
  • Topological sort

Dynamic programming

  • Standard dynamic programming problems such as Rod Cutting, Knapsack, Matrix chain multiplication etc.

Number theory:

  • Modular arithmetic
  • Fermat’s theorem
  • Chinese remainder theorem(CRT)
  • Euclidian method for GCD
  • Logarithmic Exponentiation
  • Sieve of Eratosthenes
  • Euler’s totient function.

Greedy:

  • Standard problems such as Activity selection.

Search techniques:

  • Binary search
  • Ternary search
  • Meet in the middle

Data structures (Basic):

  • Stacks
  • Queues
  • Trees
  • Heaps

Data structures (Advanced):

  • Trie
  • Segment trees
  • Fenwick tree or Binary indexed tree(BIT)
  • Disjoint data structures.

Strings:

  • Knuth Morris Pratt(KMP)
  • Z algorithm
  • Suffix arrays/Suffix trees. These are bit advanced algorithms.

Computational geometry:

  • Graham-Scan for convex hull
  • Line sweep.

Game theory:

  • Basic principles of Nim game
  • Grundy numbers
  • Sprague-Grundy theorem.

About

Practice Problems from CodeChef, SPOJ.


Languages

Language:Java 43.6%Language:C++ 38.0%Language:HTML 11.4%Language:C 3.5%Language:Python 2.6%Language:Swift 0.5%Language:Makefile 0.4%