DSA in C++

Fast-Track Program - Master Data Structures and Algorithms with System Design

This Fast-Track Classroom course is specially designed for college students looking forward to upskill themselves this winter season and crack MAANG companies.
Industry mentors

1.5 Months Course Instead of 5 Months

Resuming building

Topics covered from scratch

Hands-on real time learning

No Coding experience required

Certified Program

Hackathons to master placements / Internships

Mock interviews

SDE Sheet - For top 150+ Companies

Quick doubt resolution

Internship and Placement Opportunities

Choose Batch

Your application has been received!

Need Counselling ?
Full Name
Email address
Contact Number

350+ problems

6 Live projects

1.5 Months Duration

Classroom Mode of Delivery

Why should you do this course?

Key Highlights

350+ Problems and System Design module covering LLD in details

6 Live Projects of DSA and Advanced DSA

Covers Foundation, Basic and Advanced modules

1.5 Months Course

Certificate of Completion/Excellence

Progress tracking & Feedback

Mock Interviews & Placement assistance

Doubt support

Curriculum designed for beginners. No Coding experience required

Syllabus
  • Welcome aboard
    Welcome to the course
  • Flowcharts and Psuedocode
    This helps you to understand how to convert logic and write it in the form of diagrammatic and textual way.
  • Basics of Programming
    For any language the first and the most important thing to learn is the syntax, variables, loops, and conditionals. In this section, we will cover how to convert our logic to C++ Code.
  • Operators in C++
    To help you understand different types of operators such as Arithmetic, Compund assignment, Bitwise, and Logical operators.
  • Functions
    In this section, you will learn to write code in a modular way to help you reuse the code in different C++ files and make it more readable and organized.
  • Arrays
    This is the one of most important data structure that is generally easy to understand but algorithms and concepts of this topic can be very tricky and it is asked in almost every tech company. Algorithms such as Binary Search, Sorting, Maximum Subarrays, and Searching are must to do in order to get a good grasp of this topic.
  • Character Arrays
    This is another type of an array, just that you need to understand how to handle strings using character arrays, It will help you understand how the variation of data type in array change the way we handle this data structure.
  • Pointers
    This most important topic to understand in order to move towards the advanced data structures, it is just like another datatype to help store address of memory we create to store data.
  • Algorithms STL
    STL is one of the most useful thing that to write codes in a faster way, this is something comes very handy in competitive programming and online coding practise sites.
  • Bitmasking
    In this section, we will understand how Bitwise operators like AND, OR, XOR, and NOT to work on machine code to help write the programs that works faster, since computer understands machine code.
    This concept is also very useful in Recursion as well as Dynamic programming advanced concepts.
  • Strings
    It's an alternative to Character Array, Strings data type helps in handling string easier and faster. In depth understanding of this concept becomes easier after understanding OOPs concepts.
  • Recursion Introduction
    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.
  • Deep Diving into recursion
    In this section, we will start exploring how to form recurrence relations using problem statements and mainly discussing recursion on arrays and strings.
  • Recursion on Subsets
    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.
  • Time and Space Complexity
    It helps us to compare the algorithms on the basis of Time and Space it takes to run the code and help us to master how to write codes by considering constraints of the problem.
  • Object Oriented Programming
    One of the most important topic to build data structures, this is not only used in every data structure but also help us to understand how to associate the real world with programming language.
  • Linked List
    In this topic we learn how to store data in a non-contiguous manner and we understand how the Linked List can work in a better time complexity that other data structures in some operations.
  • Stack
    It follows the principle of Last In and First Out, although this data structure can be easily understood but the concept of LIFO can be used to solve some typical problems such as Histogram Area, Stock Span, and Balanced Parantheses etc.
  • Queues
    This data structure works just like a normal queue does and it is mainly used as a helping data structure in Trees and Graphs.
  • Binary Trees and Binary Search Trees
    In this data structure, we learn how to store data in a hierarchical format. It is one of the most important topic from Interview point of view and questions from this topic is frequently asked in companies such as Amazon, Microsoft, Flipkart and Google etc.
  • Heap
    This data structures helps you to 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?
  • Hashmap
    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.
  • Graphs
    The most popular data structures in companies like Direct-i, Google, and Arcesium etc.
    It is usually considered tough because of the dependency on other data strucutres such as queue, hashmaps, sets, and heap etc. but once you get a taste of how to apply these things together it will make you a better programmer.
  • 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.
  • One Dimensional Dynamic Programming
    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.
  • Two Dimensional Dynamic Programming
    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.
  • Greedy Algorithms
    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.
  • 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.
  • Welcome aboard
    Welcome to the course
  • Browser
    What happens when you hit the url on your browser ?What is system Design? Types of System Design HLD intro
  • Types of Design && Design Basics
    LLD intro & SDLC Web App VS Website What is architecture
  • System types
    Monoliths Distributed System LatencyThroughput
  • Android Components
    Availability TIme Consistency
  • Characteristics
    Availability Time Consistency
  • Storing Hot Data
    Websockets & SSE Scaling Techniques Horizontal Scaling
  • Theorams
    Redundancy && Replication Cap theorem Databases
  • Division of Data
    DataBase optimization Partitioning Communication
  • Communication
    Message Based communication Web Apps Rest Apis
  • Microservices
    Microservices & architecture Web Servers && Protocols & App security Service
  • Design Problem
    URL Shortener/ Pastebin Api Rate Limiter
  • Design Problem
    Youtube Design Web Crawler
  • Design Problem
    Drop Box Uber Backend Design
  • Design Problem
    Twitter Instagram
  • Design Problem
    Ticketmaster design
  • Basic Of LLD
    What is LLD? LLD INTERVIEWS
  • OOPS
    OOD && OOP Objects && CLASSES
  • Design Principles
    OOP CONCEPTS Solid Principle
  • Design Principles
    SRP Princripal O-C Principal
  • Design Principles
    Livosik Principal
  • Design Principles
    Integration Principal
  • Design Principles
    Dependency Principal Problems
  • Patterns
    Design Patterns
  • Design Problems
    Case Studies
  • Coding using OOPs
    Machine Coding
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

350+ Problems and System Design module covering LLD in details
6 Live Projects of DSA and Advanced DSA
1.5 months duration
Mock Interviews & Placement assistance
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
24/7 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

See what students have to say