Studied Computer Science - but never really understood the complex topic of data structures and algorithms? Or maybe you’re a self-taught programmer, with little to no knowledge of this important topic. Or perhaps you failed a job interview because you couldn't answer basic data structure and algorithm questions. Data structures and algorithms are patterns for solving problems. Developers who know more about data structures and algorithms are better at solving problems.
Data Structures & Algorithms: Part 1
Data Structures & Algorithms: Part 1 is a 88-lesson 4 hours 39 minutes self-paced course by Mosh Hamedani (Code with Mosh). Studied Computer Science - but never really understood the complex topic of data structures and algorithms?
Course facts
- Lessons
- 88
- Duration
- 4 hours 39 minutes
- Level
- All levels
- Language
- English
- Updated
- Instructor
- Mosh Hamedani (Code with Mosh)
- Price
- Premium
That’s why companies like Google, Microsoft and Amazon, always include interview questions on data structures and algorithms. They want to assess your problem-solving skills. They don't care how many programming languages and frameworks you're familiar with
Who teaches Data Structures & Algorithms: Part 1? Mosh Hamedani (Code with Mosh)
Mosh Hamedani is the founder of Code with Mosh, one of the highest-volume independent online instructors in software education. He has been publishing courses continuously since the early Udemy era and has taught over a million students across his Udemy catalog and his standalone Code with Mosh platform. His teaching style is patient, rigorously structured, and deliberately beginner-tolerant — the courses are widely cited as some of the most accessible introductions to their respective topics.
The Code with Mosh catalog covers an unusually wide span: web development with HTML / CSS / JavaScript / React / Angular / Node.js, Python and Django, C# and .NET, mobile development with React Native and Flutter, SQL and database fundamentals, and the algorithm / data-structure interview prep tracks. Few independent instructors maintain this much breadth at consistent quality.
The CourseFlix listing under this source carries over 35 Code with Mosh courses spanning that range. Material is paid; Code with Mosh runs on per-course pricing on the original platform. Courses are aimed primarily at developers picking up a new technology from a clean start through to working production proficiency.
What lessons are included in Data Structures & Algorithms: Part 1?
| # | Lesson Title | Duration | Access |
|---|---|---|---|
| 1 | Course Outline Demo | 02:53 | |
| 2 | Introduction | 00:25 | |
| 3 | What is Big O | 01:59 | |
| 4 | O(1) | 01:30 | |
| 5 | O(n) | 03:45 | |
| 6 | O(n^2) | 02:25 | |
| 7 | O(log n) | 02:40 | |
| 8 | O(2^n) | 00:51 | |
| 9 | Space Complexity | 02:33 | |
| 10 | Introduction | 00:45 | |
| 11 | Understanding Arrays | 03:09 | |
| 12 | Working with Arrays in Java | 03:30 | |
| 13 | Exercise- Array Class | 02:52 | |
| 14 | Solution- Creating the Class | 03:20 | |
| 15 | Solution- insert() | 04:20 | |
| 16 | Solution- removeAt() | 04:52 | |
| 17 | Solution- indexOf() | 02:29 | |
| 18 | Dynamic Arrays | 03:49 | |
| 19 | Summary | 01:10 | |
| 20 | Introduction | 00:37 | |
| 21 | What are Linked Lists | 04:34 | |
| 22 | Working with Linked Lists | 03:25 | |
| 23 | Exercise- Building a Linked List | 01:26 | |
| 24 | Solution- addLast | 06:10 | |
| 25 | Solution- addFirst | 02:14 | |
| 26 | Solution- indexOf | 01:55 | |
| 27 | Solution- contains | 01:06 | |
| 28 | Solution- removeFirst | 04:24 | |
| 29 | Solution- removeLast | 04:41 | |
| 30 | Implementing size() | 04:16 | |
| 31 | Converting Linked Lists to Arrays | 02:11 | |
| 32 | Cheat Sheets | 01:13 | |
| 33 | Arrays vs Linked Lists | 03:22 | |
| 34 | Types of Linked Lists | 03:15 | |
| 35 | Exercise- Reversing a Linked List | 01:34 | |
| 36 | Solution- Reversing a Linked List | 09:01 | |
| 37 | Exercise- Kth Node from the End | 03:21 | |
| 38 | Solution- Kth Node from the End | 05:23 | |
| 39 | Summary | 01:13 | |
| 40 | Introduction | 00:32 | |
| 41 | What are Stacks | 02:48 | |
| 42 | Working with Stacks | 02:22 | |
| 43 | Exercise- Reversing a String | 00:42 | |
| 44 | Solution - Reversing a String | 05:02 | |
| 45 | Exercise- Balanced Expressions | 02:55 | |
| 46 | Solution- A Basic Implementation | 05:18 | |
| 47 | Solution- Supporting Other Brackets | 03:37 | |
| 48 | Solution- First Refactoring | 04:10 | |
| 49 | Solution- Second Refactoring | 05:51 | |
| 50 | Exercise- Building a Stack Using an Array | 00:48 | |
| 51 | Solution- Implementing a Stack Using an Array | 08:19 | |
| 52 | Summary | 00:34 | |
| 53 | Introduction | 00:27 | |
| 54 | What are Queues | 02:05 | |
| 55 | Queues in Java | 05:13 | |
| 56 | Exercise- Reversing a Queue | 01:07 | |
| 57 | Solution- Reversing a Queue | 02:18 | |
| 58 | Exercise- Building a Queue Using an Array | 02:04 | |
| 59 | Solution- A Basic Implementation | 06:33 | |
| 60 | Solution- Circular Arrays | 05:55 | |
| 61 | Exercise- Implementing a Queue Using a Stack | 00:56 | |
| 62 | Solution- Building a Queue Using a Stack | 07:44 | |
| 63 | Priority Queues | 01:54 | |
| 64 | Exercise- Building a Priority Queue | 03:58 | |
| 65 | Solution- Building a Priority Queue | 08:52 | |
| 66 | Solution- Refactoring | 03:03 | |
| 67 | Summary | 00:58 | |
| 68 | Introduction | 00:27 | |
| 69 | What are Hash Tables | 02:45 | |
| 70 | Working with Hash Tables | 06:07 | |
| 71 | Exercise- Find the First Non-repeated Character | 00:55 | |
| 72 | Solution- First Non-repeating Character | 07:40 | |
| 73 | Sets | 02:24 | |
| 74 | Exercise- First Repeated Character | 00:33 | |
| 75 | Solution- First Repeated Character | 02:37 | |
| 76 | Hash Functions | 05:56 | |
| 77 | Collisions | 01:07 | |
| 78 | Chaining | 01:41 | |
| 79 | Open Addressing- Linear Probing | 02:42 | |
| 80 | Open Addressing- Quadratic Probing | 01:30 | |
| 81 | Open Addressing- Double Hashing | 03:20 | |
| 82 | Exercise- Build a HashTable | 02:37 | |
| 83 | Solution- put() | 06:08 | |
| 84 | Solution- get() | 04:30 | |
| 85 | Solution- remove() | 02:31 | |
| 86 | Solution- Refactoring | 11:05 | |
| 87 | Summary | 01:26 | |
| 88 | Course Wrap Up | 00:33 |
Get instant access to all 87 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.
Learn more about subscriptionWhat courses are similar to Data Structures & Algorithms: Part 1?
-
Updated 2y agoUltimate Java Part 1: Fundamentals
By: Mosh Hamedani (Code with Mosh)Java is the most widely used and in-demand programming language. It's used in 90% of fortune 500 company websites, most big banks and financial companies, almos3h 21m -
Updated 2y agoJava Servlets and JSPs developer course
By: UdemyYou will learn to understand the basics of servlets (a simple Java interface that extends the functionality of a server) and the technology that allows web deve2h -
FreeClassicMaster Spring 6 Spring Boot 3 REST JPA Hibernate
By: UdemyMaster Spring Framework 6, Spring Boot 3, REST APIs, JPA, Hibernate — build web applications with the latest Spring Boot 3 stack and modern best practices.36h 15m5/5 -
Updated 9mo agoLow Level Design
By: takeUforward (Striver)Low-Level Design (LLD) course by takeUforward (Striver): turn architecture into detailed classes, structures and algorithms. Java-based, fits any OOP language.22h 34m -
Updated 2y agogRPC [Java] Master Class: Build Modern API & Micro services
By: UdemygRPC is a new and modern framework for building scalable, modern and fast API. It is leveraged by many top tech companies such as Google, Square & Netflix and e5h 9m -
Updated 2y agoJava Foundations: The Complete Course with Java 21 Updates
By: UdemyThis course is designed for absolute beginners in programming and for those who don't mind learning Java at a slower pace.88h 37m -
Updated 2y agoUltimate Java Part 2: Object-oriented Programming
By: Mosh Hamedani (Code with Mosh)Heard about object-oriented programming, but not sure what it is? Object-oriented programming (OOP) is a popular style of programming.3h 41m
More courses by Mosh Hamedani (Code with Mosh)
-
ClassicReact: Intermediate Topics
Advance your React skills with the Intermediate Topics course. Learn state management, routing, and best practices for building complex applications using React6h 5m4/5 -
Updated 3y agoThe Ultimate Django Series: Part 3
Master advanced techniques and best practices for building professional-quality backends.4h 18m -
FreeUpdated 3y agoUltimate C++ Part 3: Advanced
To take this course, you should have watched the first two parts or have a thorough understanding of the concepts covered there.3h 41m5/5 -
Updated 3y agoXamarin Forms: Build Native Mobile Apps with C#
Do you have an idea for an app and want to turn that into reality? Well, if you want to build that app for iOS, you need to know Objective-C, which is an old.7h 17m -
Updated 3y agoMastering Next.js 13 with TypeScript
Clear. Concise. Comprehensive. Tired of piecing together disconnected tutorials or dealing with rambling, confusing instructors? This course is for you! It's pe5h 16m5/5 -
Updated 3y agoThe Ultimate Redux Course
Redux is the most popular state management library for JavaScript apps. It's mostly used with React but it's also becoming popular in Angular, Ember and Vue com6h 5m5/5