DSA in C++

Master Competitive programming

This course is for students who have learnt Data structures and algorithms and are now planning to go the next step and learn Competitive programming. This course is ideal for students planning to go for ACM-ICPC, Hackathons and planning to appear for Internship or Placement drives in Tech Big-wigs like Google, Facebook, Amazon or Microsoft.
Choose Batch

FAANG course Bonus

200+ Hand Picked Problems

4/6 months Duration

Classroom | Live | Online Mode of Delivery

Why should you do this course?

Enquire at - 9999579111
Check out CAST - our Scholarship test for Performance based fee waivers.
Click here

Starting from ₹ 1425/-

Choose Batch

Key Highlights

FAANG Course as Bonus

200+ Hand Picked Questions

4/6 Months Course Duration

Certificate of Excellence/Completion

Placement assistance

Syllabus
  • Welcome aboard
    Welcome to the course
  • Vector
    In this section we will learn about the container vectors which are same as the dynamic arrays with the ability to resize itself automatically.Since its a container it contains various functions which come quite handy while solving the problems.
  • Strings
    In this section we will learn about strings which is an alternative to character array, String data type helps in handling string easier and faster.With proper understanding of OOPs this concept becomes more clear.
  • List
    In this section we learn about the STL Lists which is based on the data structure Linked List which store data in a non-contiguous manner.
  • Stacks
    In this section we learn about the STL stacks which is based on the data structure Stacks which follows the principle of Last In and First Out.
  • Queues
    In this section we learn about the STL queue which is based on the data structure Queue which follows the principle of First In and First Out. This data structure works just like a normal queue does and it is mainly used as a helping data structure in Trees and Graphs.
  • Maps
    In this section we will learn about Maps which stores the data in the mapped form of key->value which is implement on the basis of Red Black Trees.
  • Priority Queue
    In this section we will learn about the STL priority queue which is primarily based on heaps which helps us understand how the infinite stream of data coming can be accessed to fetch the useful information, for example, find the most sold products on any website?
  • Set
    In this section we will learn about Sets which are internally implemented through BST which store unique elements following a specific order.
  • Functions
    In this section we will learn about various functions that are there in the STL which help us in solving various problems easily like find, sort etc.
  • Policy based Data Structures
    In this section we will learn about the some data structures that are not part of the STL but are supported by the GCC. These data structures can be designed for high-performance, flexibility, semantic safety, and conformance to the corresponding containers in std.
  • Tries
    It helps us to search in constant time and incase you want to use auto suggestions features of Amazon, Flipkart or other sites search bar this is the solution. Many problems such as Maximum-Xor, and Maximum Sum etc. uses tries to help improve complexity of the problem.
  • Persistent Tries
    In this section we will understand the concept of persistency in tries.
  • Binary Search
    This is where you learn how being greedy can benefit you to solve certain problems in a faster way. The main point of focus here is to understand where we can apply Greedy over Dynamic Programming.
  • Greedy Algorithms
    In this section, we will understand how Bitwise operators like AND, OR, XOR, and NOT work on machine code to help and write programs that works faster. This concept is also very useful in Recursion as well as in Dynamic programming and Advanced DSA.
  • Bit Manipulation

    In this section we will understand about geometry and problems related to them and about convex hull.
  • Geometry And Convex Hull
    TIn this section we will understand about geometry and problems related to them and about convex hull.
  • Hashing
    It helps us to understand how we can store, update and delete the data in constant time. It is majorly used in Dynamic Programming and Graphs to help us make the time complexities of the algorithms better.
  • Square Root Decomposition/Mo's Algorithm
    In this section we will learn about Sqrt Decomposition which is a method (or a data structure) that allows you to perform some common operations (finding sum of the elements of the sub-array, finding the minimal/maximal element, etc.) in optimal time.
  • String Matching Algorithm
    In this section we will learn about various string matching algorithm such as KMP Algorithm, Z-Algorithm etc.
  • Heavy Light Decomposition
    In this section we will learn about Heavy-light decomposition which allows us to effectively solve many problems that come down to queries on a tree.
  • Fast Fourier Transform
    IIn this section we will learn about Fast Fourier Transform and its application in using problem solving.
  • Game Theory
    In this section we will understand a new approach to deal with sequential game problems.
  • Interactive Problems
    In this section we will learn about interactive problems and how to approach them and how they are different.
  • Theorems
    In this section we will learn various theorams such as Totient,Fermat Little Theoram, Miller Theoram, Wilson Theoram etc.
  • Basics
    Inorder to understand Recursion we must understand Recursion, so this is what is focussed here i.e. write codes using Recursion. It is used in Dynamic Programming and as well as in data structure such as Trees, Graphs, and Heap etc.
  • Implementation Based
    This section will be more focussed on the implemention of various problems using recursion.
  • Quick Thinking
    In this section we will learn we will combine what we have learned up until now and try to solve other difficult problems.
  • Subset Based
    In this section, we will understand how to solve algorithms such as phone search and advanced concept of Knapsack that is mostly asked in Interviews.
  • Backtracking
    It is the most important concept to understand in Recursion and it is thoroughly checked in Interviews and Technical Rounds. If one has to master recursion they need to master backtracking.
  • Advanced Backtracking
    In this section we will try to solve much more difficult problems based on backtracting and implementation.
  • Segment Trees
    In this section we will learn about segment trees which are the used to store information about intervals/segments which in turn help us querying which of the stored segments contain a given point.
  • Lazy Propagation
    In this section we will learn to optimise our segment trees problems using lazy propagation.
  • Persistent Segment Trees
    In this section we will understand the concept of persistency in segment trees.
  • Fenwick Trees
    In this section we will learn about the binary indexed tree/fenwick trees which predominantly is used to efficiently update elements and calculate prefix sums in a table of numbers.
  • Basics
    We learn how we can improve the time complexities of Recursive algorithms drastically using concepts like Top Down approach. Also we convert out Top down approach to bottom up approach using the recurrence relation and DP concept, it's exactly what is required for the master DP.
  • One Dimentional DP
    In this section we will go through the DP problems dealing in One Dimention.
  • Grid Based DP and Two Dimentional DP
    The most important concepts of DP are Knapsack, Optimal Game strategy, and solving string problems using 2D storage there by improving their complexities multiple folds.
  • Multidimentional DP
    In this section we will go through the DP problems involving Multi-Dimention.
  • Atcoder DP Set
    In this section we will go through all the problems of the famous atcoder dp contest.
  • Longest Increasing Subsequence(Many Ways)
    In this section will will understand the famous DP problem using different technique.
  • Introduction
    In this section we will learn about graphs as a non linear data structure and learn about its basic implementations and definitions.
  • Traversals(BFS and DFS)
    In this section we will learn the various ways of traversal across graphs through algorithm like bfs and dfs.
  • Undirected Graph
    In this section we will learn about undirected graphs and various algorithms regarding them.
  • Directed Graph
    In this section we will learn about directed graphs and various algorithms regarding them.
  • Disjoint Set Union
    In this section we will learn about Disjoin set and Union as a powerful tool in solving various graph related problems.
  • Minimum Spanning Trees
    In this section we will get a brief idea about mst and various algorithms regarding them such as Prism's and Krushkal.
  • Shortest Path Algorithms (Dijkstras, Bellman Ford etc)
    In this section we will learn about shortest path algorithms on a weighted graphs such as Dijkstras, Bellman Ford and also Floyd Warshall Algorithm.
  • Implicit Graphs/ Splitwise Algorithm
    In this section we will learn about splitwise app implementation and Algorithm.
  • Network Flow
    In this section we will learn about various network flow and various advance algorithms such as Ford Fulkerson Algorithm, Minimum cut in a network flow.
  • LCA
    In this section we will learn about LCA, Articulation Points and Bridges.
  • Problem Set
    In this section we will go through all the concepts we have learned so far and use them in advance problems related to them.
  • Top Tech Company Questions
    Practise from the most asked questions in companies such as Amazon, Facebook, Microsoft, LinkedIn, and Google etc. Become the programmer to crack any of your dream company.
  • Google, Amazon, GoJek, Flipkart, Uber, Amex Interview mantras
    This will give you an idea of how you should prepare yourself for the final interviews and prepare yourself for everything that you may face during the placement process of any company.
Projects
Snakes Game

This project uses Arrays to build a very interesting Snake game

Splitwise App

This project uses concepts of DSA to build Splitwise App

Sudoku

Make your very own Sudoku solver with Backtracking

Travel Planner

Plan your travel when you build your own application by using Graphs

Mario

Use DP optimisation to build this all time favourite game and be a leader in your pack

Jump Froggy

Design your very own Frog game while using Greedy optimisation in DSA

Choose Batch

Classroom Batch

3-4 months duration and 200+ Handpicked questions
Priority Placement assistance & Doubt support
Personal mentoring, progress tracking and feedback
Certificate of Excellence/Completion
Free Wildcraft bag, Swags and access to Online course
Developer CV and In-class Hackathons

Courses

Live Batch

3-4 months duration, 30+ Live interactive classes and 200+ Handpicked questions
Priority Placement assistance & Doubt support
Personal mentoring, progress tracking and feedback
Certificate of Excellence/Completion
Developer CV and In-class Hackathons

Courses

Online Batch

Highly Economical model to learn
190+ hours Exhaustive content and Tech enabled Guided learning
6 months duration, 200+ questions and 6 live projects
Live interactive booster classes of difficult topics
Certificate of Excellence/Completion
Progress tracking and feedback
Optional Priority Placement assistance & Doubt support

Courses

Why choose Coding Blocks

Learn and grow as a developer with our project based courses.

Industry-focused curriculum

Superb Mentors

Best in class mentors from top Tech schools and Industry favourite Techies are here to teach you.

Career-focused pedagogy

Industry-Vetted Curriculum

Best in class content, aligned to the Tech industry is delivered to you to ensure you are a darling of the Tech industry.

Best in class mentor

Project Based Learning

Hands on learning pedagogy with live projects to cover practical knowledge over theoretical one.

Placements

Superb Placements

Result oriented courses with placement across all genres, students as well as Working professionals.

Inspirational Success stories of CB Alumni

where hard work and determination meets victory!

Still in doubt? We are here to help you out!

Top placements from these programs

Our Students are placed at

45x - 200x

Return on Investment

After the completion of the course you will get a ROI of 45 - 200x

Choose Batch

Placement Assistance

A dedicated Placement team along with Hiring Blocks, the placement portal of Coding Blocks work round the clock to ensure the best of opportunities in the Tech arena are available to you.

Developer CV and profile Preparation

Developer CV and Dev. Profile Preparation

Interview Preparation

Interview Preparation

Referrals for Placements and internships

150+ Partner Companies for Placements and Internships

Mock interviews

Mock Interviews

Learning cycle

What an inspiration to all!

Best in class mentors

Coding Blocks has some of the best mentors in the Industry who will remain by your side during your Preparation for teaching, guidance and assistance.

Kartik MathurAcademics head and Founding member

Mosina AshrafSenior Instructor and Product engineer

Mayank JhaInstructor and Product engineer

Monu Kumar Senior Instructor and Product engineer

Your Code Buddies!

A wide network of TAs aka Teaching assistants, who are typical ex-students of Coding Blocks helps in Doubt resolution along with Mentors, through Video, Audio, Screen share and other media to ensure all your queries are addressed timely

Industry Coaches

Industry experts are guides currently working in Top companies like Google, Amazon, Microsoft and the like and they helps students with invaluable tips on the Industry, Hiring process, Mock interviews and other necessities required for paving the way into the Top Tech companies around the globe.

Tech Established Learning!

The e-learning portal is an in-house developed, state of the art application which uses the best of technology and resources to ensure all learners gain the maximum from their program. It provides immersive learning with suggestions and guidance to ensure even self learning is effective and fruitful. This portal allows learning through ebooks, videos, notes while allowing learners to attempt coding problems, MCQ assignments with attending live classes and asking doubts through chat and live video calling feature with mentors and TAs.

See what students have to say

See a class in action!

Classroom Classes

Online Classes

Live Classes

Frequently Asked Questions

Learn and grow as a developer with our project based courses.

  • Coding Blocks has physical centers in Delhi and Noida. Classroom program batches are conducted in these physical centers where you learn in a class with your peers and mentors, much like the way you do in College or University with a difference that you get to have personal attention by the mentor. Batch size is extremely limited and Course completion is complete for all learners. This is the most successful program in terms of Success or placements.

  • Live interactive program is a perfect replacement to the Classroom program. In a live interactive course, classes are conducted in a controlled environment, where the mentor teaches and students can interact with the mentor, much like a classroom. The only difference is that the mentor is not physically present in front of you. This model allows you to learn from the mentor of your choice, transcending boundaries and is economical as compared to the Classroom program.

  • Self paced Online programs are guided learning courses driven by our state of the art e-learning portal. These programs carry the same legacy as our Classroom programs. In order to reinforce learning and assist students, we have made our Self paced Online programs “HYBRID”, meaning we have added Live classes of topics where we feel students need interaction with mentors. In addition, students can clear their doubts through Video calls or Chats with our mentors and TAs. If learners stay close to our centers, they can even visit our Physical centers and meet the mentors in person to resolve their doubts.

  • If you are facing trouble with any model and want to make a switch, please get in touch with the Coding Blocks Support team for assistance. If need be, we will help you transition from one model to another.

  • The three models of learning are very different in nature and suits different learners basis individual preferences. We would recommend you to connect to our counsellors who can guide you well on which program and model best suits your needs.

  • Doubts are addressed by your Mentors and Teaching assistants who are always there to help you in your program. Doubts can be addressed in person, over live video calls, live chats and screen sharing sessions, pair coding sessions, Slack channels and Whatsapp groups, in addition to our portal where your doubts are also addressed. Don’t worry, we got your back.

  • Once you complete your course, you need to apply for the position of TA in Coding Blocks. Your application will be screened, you will be interviewed and tested on Coding problems and then you will be roped in. As Coding Blocks alumni, you will get priority.

  • A dedicated Placement team along with Hiring Blocks, the placement portal of Coding Blocks work round the clock to ensure the best of opportunities in the Tech arena are available to you.There are more than 150 companies who have partnered with Coding Blocks for hiring our students.

  • Most of the learners at Coding Blocks are College students only. All our courses and curriculum, across Classroom, Live interactive and Online self paced models are created to ensure you can learn while studying in your college.

  • Yes, you will get Certificate of completion once you complete the course. Completion of course depends on how much content has been completed, together with how many assignments have been completed. If you are a dedicated and hard working learner, you can also bag our Certificate of excellence.

  • Our Alumni is our family. We definitely would be more than thrilled to have you back, as this is really common for us. And yes, we would be happy to offer you exciting concessions on fee. We would recommend you to connect to our counsellors who can guide you well on this.