Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

Java + DSA + Interview Preparation Course

Kunal Kushwaha via YouTube

Overview

Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
Learn Java programming and data structures & algorithms through a comprehensive course designed to prepare you for technical interviews at top-tier companies including Google, Facebook, Amazon, and Microsoft. Master Java fundamentals starting from basic concepts like program flow, conditionals, loops, and functions, then progress through advanced topics including object-oriented programming principles, generics, collections framework, and exception handling. Develop proficiency in essential data structures including arrays, linked lists, stacks, queues, binary trees, heaps, and hash tables, while learning their implementations and real-world applications. Study crucial algorithms covering searching techniques like linear and binary search, sorting algorithms including bubble sort, merge sort, quick sort, and advanced methods like radix sort and count sort. Gain expertise in recursion, backtracking, and dynamic programming through hands-on problem solving with maze problems, N-Queens, Sudoku solver, and permutation challenges. Practice time and space complexity analysis using Big O notation to optimize your solutions effectively. Explore advanced topics such as AVL trees, segment trees, string matching algorithms, Huffman coding, and range query optimization techniques. Solve interview-style questions from major tech companies while learning effective LeetCode problem-solving strategies and approaches that have proven successful in clearing Google interviews. Build practical projects including a Tic Tac Toe game and work with file handling, large number processing, and text compression algorithms to reinforce your learning through real-world applications.

Syllabus

Best Data Structures & Algorithms (DSA) Course - Clear Any FAANG Interview!
Java vs C++ for Data Structures & Algorithms
How I Cleared My Google Interviews - Use LeetCode Effectively!
Complete Git and GitHub Tutorial
Introduction to Programming - Types of Languages, Memory Management
Flow of Program - Flowcharts & Pseudocode
Introduction to Java - Architecture & Installation
First Java Program - Input/Output, Debugging and Datatypes
Conditionals and Loops + Calculator Program
Switch Statements + Nested Case in Java
Functions / Methods in Java
Introduction to Arrays and ArrayList in Java
Linear Search Algorithm - Theory + Code + Questions
Binary Search Algorithm - Theory + Code
Binary Search Interview Questions - Google, Facebook, Amazon
Binary Search in 2D Arrays
Bubble Sort Algorithm - Theory + Code
Selection Sort Algorithm - Theory + Code
Insertion Sort Algorithm - Theory + Code
Cycle Sort - Amazon, Google, Microsoft Interview Questions
Strings and StringBuilder in Java
Solve Any Pattern Question With This Trick!
Introduction to Recursion - Learn In The Best Way
Time and Space Complexity COMPLETE Tutorial - What is Big O?
Bitwise Operators + Number Systems - Maths for DSA
Maths for Data Structures & Algorithms
Recursion - Level 1 Questions (Theory + Code + Tips)
Recursion - Array Questions (Theory + Code + Tips)
Recursion - Pattern Questions + Bubble Sort + Selection Sort
Merge Sort Using Recursion (Theory + Complexity + Code)
Quick Sort Using Recursion (Theory + Complexity + Code)
Recursion Subset, Subsequence, String Questions
Recursion - Permutations (Theory + Code + Tips)
Recursion Google, Amazon Questions: Dice Throw & Letter Combinations of a Phone Number
Backtracking Introduction + Maze Problems - Theory + Code + Tips
N-Queens, N-Knights, Sudoku Solver (LeetCode) - Backtracking Questions
OOP 1 | Introduction & Concepts - Classes, Objects, Constructors, Keywords
OOP 2 | Packages, Static, Singleton Class, In-built Methods
OOP 3 | Principles - Inheritance, Polymorphism, Encapsulation, Abstraction
OOP 4 | Access Control, In-built Packages, Object Class
OOP 5 | Abstract Classes, Interfaces, Annotations
OOP 6 | Generics, Custom ArrayList, Lambda Expressions, Exception Handling, Object Cloning
OOP 7 | Collections Framework, Vector Class, Enums in Java
Linked List Tutorial - Singly + Doubly + Circular (Theory + Code + Implementation)
Linked List Interview Questions - Google, Facebook, Amazon, Microsoft
Stacks and Queues Complete Tutorial - Theory + Implementation + Types (Dynamic, Circular)
Stacks and Queues Interview Questions - Google, Facebook, Amazon, Microsoft
Tic Tac Toe Java Game in Under 15 Minutes
Binary Trees Tutorial - Introduction + Traversals + Code | Binary Search Trees (BST)
AVL Trees Tutorial | Self Balancing Binary Search Trees
Segment Trees Tutorial | Range Queries | Interview Questions
StringBuffer in Java | Data Formatting | Working With Large Data
BigInteger & BigDecimal - Handling Large Numbers in Java
File Handling in Java Complete Course
Binary Tree Questions for Technical Interviews - Google, Facebook, Amazon, Microsoft
Introduction to Heap Data Structure + Priority Queue + Heapsort Tutorial
Introduction to HashMap & HashTable in Java
Karp-Rabin String Matching Algorithm | Substring Search Pattern
Count Sort Algorithm - Theory + Code
Radix Sort Algorithm - Theory + Code
Huffman Coding Greedy Algorithm | Text Compression
Easily Solve Range Query Interview Problems with Square Root Decomposition/Mo's Algorithm
Binary Tree from Preorder & Inorder Traversal - Advance Tree Questions
Vertical Order Traversal of a Binary Tree - Google Interview Question
Word Ladder - LeetCode Hard - Google Phone Screen Interview Question
Two Sum IV - Google, Amazon, Facebook Interview Question
Kth Smallest Element in a BST - Google, Amazon, Facebook Interview Question
Convert Binary Tree to Doubly Linked List - FAANG Interview Question
Correct Binary Tree That Has Two Nodes Swapped - FAANG Interview Question

Taught by

Kunal Kushwaha

Reviews

Start your review of Java + DSA + Interview Preparation Course

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.