All Projects → kothariji → Competitive Programming

kothariji / Competitive Programming

Hello Programmers 💻 , A one-stop Destination✏️✏️ for all your Competitive Programming Resources.📗📕 Refer for contributions

Projects that are alternatives of or similar to Competitive Programming

This repository contains all the popular competitive programming and DSA questions with solutions.
Stars: ✭ 122 (+7.96%)
Mutual labels:  competitive-programming, algorithms, data-structures, programming, leetcode
Hacktoberfest 2020
Welcome to Open-source! Simply add your details to contributors | Repo for Hacktoberfest 2020 ✅
Stars: ✭ 621 (+449.56%)
Mutual labels:  digitalocean, hacktoberfest, beginner-friendly, first-timers, opensource
Data Structures And Algorithms In Cpp
This repository is in development phase and will soon provide you with c++ code of various data structures and algorithms
Stars: ✭ 176 (+55.75%)
Mutual labels:  hacktoberfest, first-timers, algorithms, data-structures, opensource
Tech Interview Preparation
A one stop solution to ace your next coding interview 👨‍💻
Stars: ✭ 188 (+66.37%)
Mutual labels:  hacktoberfest, competitive-programming, beginner-friendly, leetcode
Data Structures And Algorithms
A collection of some implementations of data structures and algorithms.
Stars: ✭ 101 (-10.62%)
Mutual labels:  competitive-programming, codeforces, algorithms, data-structures
2 month data structures and algorithmic scripting challenge starting from 20th December 2018 - Coding is Fun! 💯💯 Do it everyday!! Also, Do give us a ⭐ if you liked the repository
Stars: ✭ 186 (+64.6%)
Mutual labels:  hacktoberfest, competitive-programming, algorithms, data-structures
Programmers Community
This repository contains various solution of a problem in Ruby, C, C++, Python and Java.
Stars: ✭ 189 (+67.26%)
Mutual labels:  digitalocean, hacktoberfest, algorithms, data-structures
A repository for HacktoberFest 2018.
Stars: ✭ 139 (+23.01%)
Mutual labels:  digitalocean, hacktoberfest, beginner-friendly, programming
Hacktoberfest Simple Practice Programmes
A beginner-friendly open source repository to create your pull request.
Stars: ✭ 42 (-62.83%)
Mutual labels:  digitalocean, hacktoberfest, beginner-friendly, opensource
Competitive Programming Repository
Competitive Programming templates that I used during the past few years.
Stars: ✭ 367 (+224.78%)
Mutual labels:  competitive-programming, algorithms, data-structures, graphs
Includes codes from coding competitions and contests over the internet. Languages:- Python3 and C++
Stars: ✭ 14 (-87.61%)
Mutual labels:  programming, leetcode, competitive-programming, codeforces
Competitive coding
This repository contains some useful codes, techniques, algorithms and problem solutions helpful in Competitive Coding.
Stars: ✭ 393 (+247.79%)
Mutual labels:  hacktoberfest, competitive-programming, algorithms, data-structures
Leetcode Solutions
This repository consists of solutions to the problem from LeetCode platform. Subscribe to our Channel for more updates
Stars: ✭ 128 (+13.27%)
Mutual labels:  hacktoberfest, beginner-friendly, first-timers, leetcode
Problem Solving Training
Problem solving training for computer science students.
Stars: ✭ 210 (+85.84%)
Mutual labels:  competitive-programming, codeforces, algorithms, data-structures
Datastructures Algorithms
The best library for implementation of all Data Structures and Algorithms - Trees + Graph Algorithms too!
Stars: ✭ 2,105 (+1762.83%)
Mutual labels:  competitive-programming, algorithms, data-structures, leetcode
Hacktoberfest 2k18 Katas
Game has ended :: Little challenges to up your Hacktoberfest game!
Stars: ✭ 160 (+41.59%)
Mutual labels:  digitalocean, hacktoberfest, beginner-friendly, programming
Learn Cpp from Beginner to Advanced ✅ Practice 🎯 Code 💻 Repeat 🔁 One step solution for c++ beginners and cp enthusiasts.
Stars: ✭ 359 (+217.7%)
Mutual labels:  leetcode, graphs, competitive-programming, codeforces
Make a Pull Request
Stars: ✭ 415 (+267.26%)
Mutual labels:  digitalocean, hacktoberfest, beginner-friendly, opensource
Algorithmic Pseudocode
This repository contains the pseudocode(pdf) of various algorithms and data structures necessary for Interview Preparation and Competitive Coding
Stars: ✭ 519 (+359.29%)
Mutual labels:  hacktoberfest, algorithms, data-structures, leetcode
Data Structure And Algorithms
A complete and efficient guide for Data Structure and Algorithms.
Stars: ✭ 48 (-57.52%)
Mutual labels:  hacktoberfest, algorithms, data-structures

Competitive Programming 🔆🔆

Hello Programmers💻, A one-stop destination for all your Competitive Programming Resources.

📌📌 What is Competitive Programming? 📌📌

According to my, competitive programming is a sport. A sport based on problem-solving skills, thinking ability, speed testing, regularity and to be precise. Competitive Programming will help you build logic and implement that logic to find solutions to a real-world problem. Brainstorming upon your code will increase your coding skills as well as it will help to expand your thinking capacity. Thus practicing Competitive Programming on day to day basis helps you in mastering that particular language. And believe us, if you are playing this sport regularly, you are already prepared for the technical rounds of the Interviews. So now let's dive into the ocean of Competitive Programming.

Platform to practice Competitive Programming 🔭🔭


The skills needed for competitive programming have long-lasting benefits to your career as a developer. There are numerous benefits to participating in competitive programming, including:

Getting hired: Participating in competitive programming can make you a desirable candidate for companies. When you participate in large competitions like the ACM International Collegiate Programming Contest, you have a good chance of being on the radar of companies like Apple, Facebook, IBM, Google, and more. Tech companies track competitions and events to find potential employees. Large competitive programming events are extremely prestigious and difficult to succeed in, so if you do well, that is an indicator of your technical talent and abilities. That’s why many companies have sponsored programming competitions.

Teamwork skills: When you participate in these competitions, you will often work in teams, meaning that you learn how to interact with teammates during high-pressure moments. This is an incredibly important skill. When you are working as a software engineer, you will almost always work with other individuals, meaning that companies care a lot about your communication and team skills. Also, most teams will have a leader. If you are the leader of the team, this demonstrates management skills, making you even more of a desirable candidate. Companies want to know that you can work effectively and comfortably with your teammates.

Interview prep: When you are trying to get an engineering job, companies will test you for your knowledge of data structures and algorithms. When you participate in competitive programming, you work to develop an advanced understanding of these concepts. Furthermore, the environment for the coding interview and competitive programming is quite similar. They are both high-pressure environments, in which you have to engage in problem-solving. While many others may not be able to adjust to this environment, your competition experience gives you an advantage.

Most Famous Programming Contests 👑 👑

Upcomming contests schedule -

Books 🔆🔆

Algorithms 🔆🔆

Code Visualisation 🔆🔆

Learning Resources (Topic Wise) 🏁🏁🏁

Big O Notations

  • CS Dojo - Introduction to Big O Notation and Time Complexity
  • Simple Snippets - Asymptotic Analysis of Algorithms with Example
  • Big-O CheatSheet

STL in C++

Binary Search


  • Allocate Minimum No of pages(GFG)
  • Aggressive Cows(SPOJ)
  • Prata(SPOJ)
  • Painters Partion(GFG)
  • Square Root using BS (GFG)
  • Floor And Ceil in a Sorted Array(GFG)
  • First And Last occurence of an element(GFG)
  • Count of element in a sorted array(GFG)
  • Search in a rotated Sorted Array(leetcode)
  • Logs(Atcoder)
  • Search in A 2D Matrix (Leetcode)
  • First bad version(Leetcode)
  • Heaters(Leetcode)

Number Theory (Mathematics)

Recursion and BackTracking

Bit Manipulations

Graph Theory

Dynamic Programing

Coding Platforms

Important Data Structures:


  • Linear Search
  • Binary Search
  • Ternary Search


  • Selection Sort
  • Bubble Sort
  • Insertion Sort
  • Merge Sort
  • Quick Sort
  • Heap Sort
  • Radix Sort
  • Count Sort
  • bucket sort



Number Theory

  • Prime Number Generation (Sieve, Segmented Sieve)
  • Euler Totient Theorem
  • Fermat’s Theorem
  • HCF & LCM (Euclid)
  • Extended Euclid Algorithm
  • Fibonacci
  • Chinese Remainder Theorem
  • Linear Diophantine Equations (Extended Euclid)
  • Binary Exponentiation
  • Modulus Arithmetic (addition,multiplication,subtraction,modular Inverse)


  • Basic Probability and Conditional Probability
  • Random Variables
  • Probability Generating Functions
  • Expectation
  • Probability Distribution [Binomial, Poisson, Normal,Bernoulli]

Linear Algebra

  • Multiplication ( Strassen's algorithm ), Logarithmic exponentiation
  • Matrix Transformations [ Transpose, Rotation Of Matrix, Representing Linear Transformations Using Matrix ]
  • Determinant, Rank and Inverse Of Matrix [ Gaussian Elimination, Gauss Jordan Elimination]
  • Solving System Of Linear Equations
  • Matrix Exponentiation To Solve Recurrences

Game Theory -



  • life(SPOJ)
  • Defense of a kingdom (SPOJ)
  • Chopsticks(Codechef)
  • Fractional Knapsack(GFG)
  • Station Balance(UVA)
  • Huffman CodIng(GFG)
  • Maximun Unique Segments(Codechef)
  • Egyptian Fraction(GFG)
  • Job Sequencing(GFG)
  • Maximum Circles(HackerBlocks)
  • Codeforces Subsequences(Codeforces)
  • Good Strings(Codeforces)
  • Palindromic Paths(Codeforces)
  • Gas Pipeline(Codeforces)



Graph Representation

  • Adjacency Matrix
  • Adjacency List

Graph Types

  • Directed
  • Undirected
  • Weighted
  • Unweighted
  • Euler

Graph Concepts

  • DFS
  • BFS
  • Strongly Connected Component
  • Connected Component
  • Cycle Detection
  • Articulation Points
  • Bridges
  • Topological Sorting
  • Bipartite Checking
  • Flood-fill algorithm

Graph/Tree Algorithms

  • Prim’s Algorithm
  • Kruskal Algorithm
  • Dijkstra
  • Bellman-Ford
  • Floyd Warshall’s Algorithm
  • Euler Tour

Dynamic Programming


Classical Problems

  • Fibonacci Series
  • Longest Common Substring
  • Longest Increasing Subsequence
  • Longest Palindromic Substring
  • Edit Distance
  • Egg Dropping Puzzle
  • 0-1 Knapsack
  • Unbounded Knapsack
  • Subset Sum
  • Coin Change Combinations
  • Coin Change Permutation
  • Longest Common Subsequence
  • Longest Substring Without Repeating Character
  • Matrix Chain Multiplication
  • Max Size Square Submatrix With One
  • Maximum Length Chain
  • Catalan Number And its Applications

Doubts and queries

Thank you for Contributing 🙏 💫


Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].