You are on page 1of 8

Competitive Coding

How to begin
- Learning a programming Language.
- Don’t need to be in much deep, just learn the basic language syntax
- Learn the data structures of it, don’t need to worry about underlying implementation
- Learning data structure and algorithms from blogs
- First get good at basics
The basics
- Array manipulation
- Mini data structures and their implementation
- Stack
- Queue
- Linked list
- Doubly linked list
- Binary tree
The basics
- Time complexity Analysis
- Somehow powerful data structure
- Heap
- Binary search tree
- Searching and sorting
- Recursion
- Little bit math
- Probability
- Linear equation
- Primality checking
Next step
- Two pointer
- Strings
- KMP
- Trie
- Greedy algorithms
- Dynamic programming
- Graph algorithms
- DFS
- BFS
- Shortest path algorithms
- Union find
- Random Variables and Expectation
Where to practice ?
- Interviewbit
- Geeks for geeks
- Codeforces
- Codechef
- Leetcode
- Competitive Programmer's Handbook
- Erdős
Beginner's mistake
- Jumping to the solution too soon
- Lack of Implementation
- Not thinking in the right direction
Famous Contests
- ACM ICPC (Olympics of programming competition)
- Google Kickstart
- Facebook Hacker cup

You might also like