In this course, you'll delve deeply into algorithms and data structures, which are key topics in technical interviews. You'll tackle problems involving linked lists, binary trees, dynamic programming, and graph algorithms. Understanding these advanced topics will equip you with the tools needed to solve complex problems efficiently.
Overview
Syllabus
- Unit 1: Linked List Operations in TypeScript
- Check if a Linked List is a Palindrome
- Swapping Nodes in a Singly Linked List
- Remove Duplicates from Unsorted Linked List
- Rotate Linked List Right by k Places
- Cycle Detection in Linked List
- Unit 2: Binary Tree Traversals in TypeScript
- Postorder Traversal of Binary Tree
- Preorder Traversal of a Binary Tree in TypeScript
- Second Smallest Value in Binary Tree
- Reverse a Binary Tree in TypeScript
- Check if a Binary Tree is a Binary Search Tree
- Unit 3: Dynamic Programming Basics in TypeScript
- Factorial Calculation Using Dynamic Programming in TypeScript
- Climbing Stairs Problem
- Minimum Steps to Transform Number
- Distinct Coin Change Combinations
- Minimal Number of Perfect Squares
- Unit 4: Graph Algorithms Implementation with Breadth-First Search in TypeScript
- Shortest Path in a Network of Cities
- Find Vertices Within Distance in a Graph
- Shortest Route with Obstacles Using BFS in TypeScript
- Shortest Path in a Binary Matrix Using BFS
- Knight's Shortest Path on a Chessboard
- Unit 5: Advanced Recursion Techniques in TypeScript
- Generate Distinct Permutations Using Recursion in TypeScript
- All String Combinations in TypeScript
- Generate All Combinations of Parentheses
- Letter Case Combinations in a String
- Word Combinations Game