## Course description

Request Expert CallLearnbay provides best **data**** structures ****and algorithms**** training in Bangalore (classroom ) & Online**

We also help working professions & freshers with interview preparation training for e-commerce companies and top product based MNCs, like Amazon, Cisco, Microsoft, Nvidia, Netapp and lots more. Our advanced training program provides a deep understanding of **data structures and algorithms , System Design ( High level & Low level system design ) & Design Patterns** concepts from ground up.

Our course content is designed by experts to match with the real-world requirements for both beginner and advance level. In our training modules, nearly 300+ problems are implemented and discussed in the class with tons of assignments for practice.

**Prerequisites:**

- Should have basic knowledge of
**C, C++, Java, C#, Python Programming**.

**Who Should Attend:**

- Working professionals preparing for interviews of tier one company
- B.Tech/MCA Students looking for data structures coaching
- Job seekers who are preparing for interview in Product MNC/ecommerce companies
- Anyone who has deep desire to
**learn****data structures and algorithms**to improve programming/coding skills

**Data Structure/Algorithms Course Duration**: 90 Hrs

**Course delivery:**

- Online and Classroom session with 30% theory and 70% hands on, Practice, Assignment.
- We provide classroom data structures and algorithms training in Bangalore.
**Online instructor led live data structures and algorithms training.**

**What will you Learn:**

When you enroll in our class-room **data structures training** program **in Bangalore**, you will surely be able to perform better at your programming jobs. **Learning data structures ****and ****algorithms** will not only help you get to better positions but also manage your work or take up interviews with confidence.

Download Course Brochure And Syllabus

**About Instructor:**

Our Data Structures And Algorithms Trainers are Working in Top product based MNCs like ** Google ,Amazon** and premier institute like IIIT hyderabad,IIT and NIT and expert in problem solving and competitive programming.

**Course Content:**

**Note:** Each Chapter has 6+ problems as class hands-on and 10+ problems as assignment every week with medium and hard difficulty level from competitive programming portals like Hackerrank, Leetcode, SPOJ etc. You will learn the following when you sign up for our **data structures and algorithms training in Bangalore**.

**Session-0: Arrays (**Basic, intermediate and hard problems: already asked in Tier one company**)**

- How array stores in the system,
- Longest Substring Without Repeating Characters
- Find Container With Most Water
- 3Sum
- Find the Next Permutation
- Multiply Strings
- Rotate Image
- Jump Game
- Plus One
- Minimum Window Substring
- Read N Characters Given Read4 II – Call multiple times
- Longest Substring with At Most Two Distinct Characters
- Find And Replace in String
- Maximize Distance to Closest Person
- Valid Parentheses
- Merge k Sorted Lists
- Trapping Rain Water
- Kth Largest Element in an Array
- Backspace String Compare
- Editor’s choice: Frequently asked in a Google phone interview.
- Minimum Cost to Hire K Workers

**30+ more problems in arrays asked in Google, Microsoft, and Amazon etc.**

** **

** **

**Session-1: List: (**Basic, intermediate and hard problems: already asked in Tier one company**)**

- What is a list, node and next reference & how list library is implemented in JAVA.
- Linked list implementation (adding, deleting and finding specific nodes )
- Linked list using singly
- Linked list using doubly
- Linked list using Circular
- Reverse Linked List
- Linked List Cycle
- Add Two Numbers
- Add Two Numbers II
- Merge Two Sorted Lists
- Merge k Sorted Lists
- Intersection of Two Linked Lists
- Copy List with Random Pointer
- Remove Nth Node From End of List
- Palindrome Linked List

**15+ more problems based on List asked in Google, Microsoft, and Amazon, Facebook etc.**

**Session-2: Stack (**Basic, intermediate and hard problems: already asked in Tier one company**)**** **

- What is a Stack? Practical use of it.
- Stack using array.
- Stack using list.
- Stack using Queue.
- Prefix to Infix Conversion
- Prefix to Postfix Conversion
- Postfix to Prefix Conversion
- Postfix to Infix
- The Stock Span Problem
- Check for balanced parentheses in an expression
- Next Greater Element
- Next Greater Frequency Element
- Number of NGEs to the right
- Maximum product of indexes of next greater on left and right
- The Celebrity Problem
- Expression Evaluation
- Arithmetic Expression Evaluation.

**20+ more problems based on Stack asked in Google, Microsoft, and Amazon, Uber etc.**

**Session-3: Queue (**Basic, intermediate and hard problems: already asked in Tier one company**)**** **

- What is a Queue? Practical use of it & how list library is implemented in JAVA.
- Queue using Array
- Queue using Stacks
- Queue using list
- Operations on queue
- Circular Queue
- Sum of minimum and maximum elements of all subarrays of size k.
- Distance of nearest cell having 1 in a binary matrix
- Level order traversal line by line | Set 2 (Using Two Queues)
- First negative integer in every window of size k
- Reversing a queue using recursion
- Reversing the first K elements of a Queue
- Interleave the first half of the queue with second half

**25+ more problems based on Queue asked in Google, Microsoft, and Amazon, Flipkart etc.**

** **

** ****Session-4: Trees (**Basic, intermediate and hard problems: already asked in Tier one company**)**

- What is a Tree data structure? Practical use of Trees in data storing and process scheduling.
- Trees – BST
- Trees – AVL
- Trees – 2-4
- Trees – Red Black
- Tree traversal (recursion and iterative method )
- Binary Tree Inorder Traversal
- Binary Tree Level Order Traversal
- Lowest Common Ancestor of a Binary Search Tree
- Lowest Common Ancestor of a Binary Tree
- Binary Tree Zigzag Level Order Traversal
- Construct Binary Tree from Preorder and Inorder Traversal
- Number of Islands
- Diameter of Binary Tree
- Accounts Merge
- Convert Binary Search Tree to Sorted Doubly Linked List
- Is Graph Bipartite?
- Binary Tree Vertical Order Traversal
- Symmetric Tree
- Binary Tree Level Order Traversal
- Convert Sorted Array to Binary Search Tree

**25+ more problems based on Trees asked in Google, Microsoft, Amazon, Flipkart, Linkedin etc.**

**Session-5: Hashing (**Basic, intermediate and hard problems: already asked in Tier one company**)**** **

- What is Hashing? Where to use it? What are some practical examples for hashing?
- Open Addressing – Basics
- Open Addressing – Linear Probing
- Open Addressing – Quadratic Probing
- Find top k (or most frequent) numbers in a stream
- Most frequent element in an array
- Smallest subarray with all occurrences of a most frequent element
- Find Itinerary from a given list of tickets
- Find number of Employees Under every Employee
- Count divisible pairs in an array

**20+ more problems based on Hashing asked in Google, Microsoft, and Amazon, Flipkart etc.**

** **

**Session-6: Graphs (**Basic, intermediate and hard problems: already asked in Tier one company**)**

- What is a Graph, how to represent a graph? Practical use of graph.
- Network Algorithms
- Network Terminology
- Spanning Trees
- Shortest Paths
- Breadth First Traversal for a Graph
- Depth First Traversal for a Graph
- Application of Depth First Search
- Application of Breadth First Traversal
- Detect Cycle in a Directed Graph
- Detect Cycle in a an Undirected Graph
- Detect cycle in an undirected graph
- Longest Path in a Directed Acyclic Graph
- Topological Sorting
- Check whether a given graph is Bipartite or not
- Applications of Minimum Spanning Tree Problem
- Prim’s MST for Adjacency List Representation
- Kruskal’s Minimum Spanning Tree Algorithm
- Minimum cost to connect all cities
- Dijkstra’s shortest path algorithm
- Dijkstra’s Algorithm for Adjacency List Representation

**20+ more problems based on Graphs asked in Google, Microsoft, and Amazon, Flipkart etc.**

** **

**Part II: Algorithms **

** **

**Session-0: Analysis of Algorithms (**Basic, intermediate and hard problems: already asked in Tier one company**)**

- Network Algorithms
- Asymptotic Analysis
- Worst, Average and Best Cases
- Asymptotic Notations
- Lower and Upper Bound Theory
- Analysis of Loops
- Solving Recurrences
- Amortized Analysis
- What is Space Complexity?

** **

**Session-1: Searching & sorting (**Basic, intermediate and hard problems: already asked in Tier one company**)**

- Binary Search, Selection Sort, Bubble Sort
- Insertion Sort, Merge Sort, Heap Sort
- Quick Sort, Radix Sort
- Search in an almost sorted array
- K’th Smallest/Largest Element in Unsorted Array
- K’th Smallest/Largest Element in Unsorted Array in Expected Linear Time
- K’th Smallest/Largest Element in Unsorted Array in Worst Case Linear Time
- Median of Two Sorted Arrays
- Find First and Last Position of Element in Sorted Array
- Merge Intervals
- Search 2D Matrix
- Insert Interval
- Count of Smaller Numbers After Self
- Peak Index in a Mountain Array
- Find the closest pair from two sorted arrays
- Find common elements in three sorted arrays
- Given a sorted array and a number x, find the pair in array whose sum is closest to x
- Count 1’s in a sorted binary array

**20+ more problems based on searching and sorting asked in Google, Microsoft, Amazon, Flipkart etc.**

**Session-2: Recursion (**Basic, intermediate and hard problems: already asked in Tier one company**)**

- Letter Combinations of a Phone Number
- Permutations
- Permutations II
- Remove Invalid Parentheses
- Regular Expression Matching
- Subsets
- Strobogrammatic Number II

**15+ more problems on recursion asked in Google, Microsoft, Amazon, Flipkart etc.**

**Session-3: Greedy Algorithms (**Basic, intermediate and hard problems: already asked in Tier one company**)**** **

- Given a sorted array and a number x, find the pair in array whose sum is closest to x
- Count 1’s in a sorted binary array
- Kruskal’s Minimum Spanning Tree Algorithm
- Huffman Coding
- Prim’s Minimum Spanning Tree Algorithm
- Prim’s MST for Adjacency List Representation
- Dijkstra’s Shortest Path Algorithm
- Dijkstra’s Algorithm for Adjacency List Representation
- Job Sequencing Problem
- Greedy Algorithm to find Minimum number of Coins

**15+ more problems on greedy algorithms asked in Google, Microsoft, Amazon, Flipkart etc.**

**Session-4: Dynamic Programming (**Basic, intermediate and hard problems: already asked in Tier one company**)**** **

- KMP Algorithm
- Rabin-Karp Algorithm
- Longest Increasing Subsequence
- Longest Common Subsequence
- Longest Palindromic Substring
- Longest Palindromic Substring
- Longest Valid Parentheses
- Decode Ways
- Best Time to Buy and Sell Stock
- Word Break
- Range Sum Query 2D – Immutable
- Continuous Subarray Sum
- Longest Valid Parentheses
- Edit Distance
- Min Cost Path
- Coin Change
- Matrix Chain Multiplication
- Binomial Coefficient
- 0-1 Knapsack Problem
- Longest Valid Parentheses

**15+ more problems based on dynamic programming asked in Google, Microsoft, Amazon, Flipkart etc.**

** **

** **

**Session-5: Pattern Searching (**Basic, intermediate and hard problems: already asked in Tier one company**)**

- Naive Pattern Searching
- KMP Algorithm
- Rabin-Karp Algorithm
- A Naive Pattern Searching Question
- Finite Automata
- Boyer Moore Algorithm – Bad Character Heuristic
- Suffix Array
- Anagram Substring Search (Or Search for all permutations)
- Pattern Searching using a Trie of all Suffixes

**15+ more problems on pattern searching asked in Google, Microsoft, Amazon, Flipkart etc.**

** **

**Session-6: Backtracking (**Basic, intermediate and hard problems: already asked in Tier one company**)**

- Print all permutations of a given string
- The Knight’s tour problem
- Rat in a Maze
- N Queen Problem
- Subset Sum
- Hamiltonian Cycle
- Sudoku
- Tug of War

**8+ more problems based on backtracking asked in Google, Microsoft, Amazon, Flipkart, Facebook etc.**

**Session-7: Divide and Conquer (**Basic, intermediate and hard problems: already asked in Tier one company**)**** **

- Introduction
- Median of two sorted arrays
- Count Inversions
- Closest Pair of Points

**Session-8: Geometric Algorithms (**Basic, intermediate and hard problems: already asked in Tier one company**)**

- Closest Pair of Points
- How to check if two given line segments intersect?
- How to check if a given point lies inside or outside a polygon?
- Given n line segments, find if any two segments intersect
- Check whether a given point lies inside a triangle or not
- How to check if given four points form a square

** **

** **

**Session-9: Graph Algorithms (**Basic, intermediate and hard problems: already asked in Tier one company**)**

- Graph Coloring (Introduction and Applications)
- Greedy Algorithm for Graph Coloring
- Travelling Salesman Problem
- Hamiltonian Cycle
- Vertex Cover Problem
- Snake and Ladder Problem
- karger’s algorithm for Minimum Cut
- Check if a given graph is tree or not

** **

** **

**Session-10: Bit Algorithms (**Basic, intermediate and hard problems: already asked in Tier one company**)**

- karger’s algorithm for Minimum Cut
- Check if a given graph is tree or not
- Set bits in all numbers from 1 to n
- Swap bits
- Add two numbers
- Smallest of three
- Set bits in an (big) array
- Next higher number with same number of set bits
- Add 1 to a number
- Turn off the rightmost set bit
- Minimum or Maximum of two integers
- Rotate bits
- Find the two non-repeating elements in an array
- Number Occurring Odd Number of Times
- Check for Integer Overflow
- Little and Big Endian

****** Interview Guidance/ Mock Interview Session ******

How To Crack Coding interview – Tier 1 Companies like **Amazon **

**,Microsoft, Flipkart And Google – Session by Expert from Top Companies**

Mock Interviews

**(One on one )**With Expert

How to Approach

**?**

*System Design And Design*

Pattern QuestionsPattern Questions

PART III . – Design Patterns (*Recommended for Candidates With 1.5 yrs to 4 yrs of experience*

**)**

**

**Optional Add-ons Module ****

Design patterns are essential part of any programming and coding interview, no matter whether you are going for Java interview or C++/.net interview. Candidates having IT experience of 1.5 Yrs. to 4 Yrs. and targeting a tier 1 product-based company need sound knowledge of design patterns apart from **data**** structures and algorithms** skills to do well in their interviews.

**Course Duration** : *25 hours*

**Fee For Design Pattern Module**: *Rs. 15000/- + Taxes*

1: Introduction to Design PatternsGoals of OO Language,Revision of OOPs Concept :- Inheritance, Polymorphism, Interfaces, Different Member Field Attributes Reviewing Object-Oriented Principles Interpret Unified Modeling Language (UML) notation and create UML diagrams , Identify selected design patterns ,Review the Model-View-Controller (MVC) patterns | 2: Creational Design PatternsIntroduction to creational design patterns : Abstract Factory, Builder, Factory, Prototype, Singleton – Applications And Case studies on each patterns With implementation in java/C++ |

3: Structural Design PatternsIntroduction to Structural Design Patters: Structural Design Patterns:Adapter, Bridge, Composite, Decorator, Facade, Flyweight, MVC, Front Controller, Module, ProxyApplications And Case studies on each patterns With implementation in Java/C++ | 4: Behavioral Design PatternIntroduction to creational design patterns : Abstract Factory, Builder, Factory, Prototype, Singleton – Applications And Case studies on each patterns With implementation |

5: Introduction to Design PatternsImpact of the design on performance of multi-threaded applications , Active Object design ,Monitor Object design ,Half-Sync/Half-Async ,Leader/Followers,Thread-Specific Storage | 6: Project And InterviewProject And Case Study on a Real Time Application Which involves design patterns covered in previous modules . Interview Guidance And mock interview on how to crack a design interview |

**PART D . – System Design (***Recommended for Candidates With more than 4.5 yrs of experience*

**)**

Candidates applying for senior role (SDE II and above) need to know the large distributed and scalable software system designs apart from **data structures and algorithms**. **System design questions have become a standard part of interview at amazon, Microsoft, Google** and top tier e-commerce companies like Flipkart for a senior role.

**Course Duration** : *25 hours*

**Fee For System Design Module**: *Rs. 15000/- + Taxes*

1: Introduction to System DesignIntroduction to System Design – Why System Design Interview? Approaching And narrowing down a problem,Identifying an Abstract Design , Optimising And addressing the bottlenecks. | 2: System Design Basics ILoad Balancing – Software And Hardware Load Balancers, Caching – Distributed And Global Cache,Sharding And Partitioning Methods,Common Problems of ShardingContent Distribution network(CDN), |

3: System Design Basics IIDatabase Indexing,Proxies – Proxy Server ,Queues,SQL vs No SQL ,CAP Theorem in distributed Computer Systems,Distributed Hash Table And Consistent Hashing,Web sockets,Ajax Polling | Designing an Instant messaging Services- Design 4: System Design Case Studies IFacebook Messenger – Case study to be covered in ClassroomDesign Twitter and Twitter Search – Consider the case for million + UserAssignment : Design Whatsapp Messaging Services |

5:Design System Design Case Studies IIBook My Show Design Uber Backend | 6: Interview Guidance.Our data structures training in Bangalore also includes a session on interview guidance and mock interviews |

4out of 5Yashica Vats– :Highly qualified trainers. It was a great learning experience with them.

5out of 5Shashi Verma– :Trainer is good and lots of problems are implemented in the class.

5out of 5swati agrawal– :Course is well designed and explains the data structures and advance algorithms concepts in detail with many real world examples.

5out of 5Anil kumar– :Training had tons of real world examples that helped me to understand the concept very well.Trainer is really helpful and answered all the queries with proper examples.

5out of 5Prachi– :Instructor taught all the concepts and all the basic and advance data structures and algorithms was implemented.Session was informative with good hands on and implementation.

5out of 5krishna– :I would like to take Data Structure course training and build my coding confidence level .

Please reach out to me so we can discuss .

Thanks