Skip to content

These are my solutions to the Data Structure and Algorithm Course on Coding Ninjas using C++.

Notifications You must be signed in to change notification settings

inishantd/CodingNinjas-DSA-Cpp

Repository files navigation

Coding Ninjas DSA in C++

Hey there 👋. This repository contains codes to all the problems that I solved in Coding Ninjas Data structure and algorithms course.

Course Curriculum

👉🏻RECURSION
Introduction to recursion, Principle of mathematical induction, Fibonacci numbers, Recursion using arrays, Recursion using strings, Recursion using 2D arrays.

👉🏻TIME AND SPACE COMPLEXITY
Order complexity analysis, Theoretical complexity analysis, Time complexity analysis of searching and recursive algorithms, Theoretical space complexity, Space complexity analysis of merge sort.

👉🏻BASICS OF OOPS
Introduction to OOPS, Creating objects, Getters and setters, Constructors and related concepts, Inbuilt constructor and destructor, Example classes.

👉🏻ADVANCE CONCEPTS OF OOPS
Static members, Function overloading and related concepts, Abstraction, Encapsulation, Inheritance, Polymorphism, Virtual functions, Abstract classes, Exception handling.

👉🏻LINKED LISTS
Introduction to linked list, Inserting node in linked list, Deleting node from linked list, Midpoint of linked list, Merge two sorted linked lists, merge sort of a linked list, Reversing a linked list.

👉🏻STACKS AND QUEUES
Introduction to stacks, Stack using arrays, Dynamic Stack class,Stack using linked list, Inbuilt stack, Queue using arrays, Dynamic queue class, Queue using linked list, Inbuilt queue.

👉🏻GENERIC TREES
Introduction to Trees, Making a tree node class, Taking a tree as input and printing, Tree traversals, Destructor for tree node class.

👉🏻BINARY TREES
Introduction to Binary Trees, Taking a binary tree as input and printing, Binary Tree traversals, Diameter of binary tree.

👉🏻BINARY SEARCH TREES
Introduction to Binary Search Trees, Searching a node in BST, BST class, Inserting and Deleting nodes in BST, Types of balanced BSTs.

👉🏻INTRODUCTION TO DYNAMIC PROGRAMMING
Introduction to Memoization, Introduction to Dynamic Programming, Fibonacci numbers using recursion, memoization and dynamic programming.

👉🏻APPLICATIONS OF DYNAMIC PROGRAMMING
Longest Common Subsequence (LCS) using recursion, memoization and dynamic programming, Edit distance using recursion, memoization and dynamic programming, Knapsack problem using recursion, memoization and dynamic programming.

About

These are my solutions to the Data Structure and Algorithm Course on Coding Ninjas using C++.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages