Skip to main content

Data Structures & Algorithms: Part 1

4h 39m 17s
English
Paid

Course description

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.

Read more about the course

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

Watch Online

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 88 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Course Outline

All Course Lessons (88)

#Lesson TitleDurationAccess
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

Unlock unlimited learning

Get instant access to all 87 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Comments

0 comments

Want to join the conversation?

Sign in to comment

Similar courses

gRPC [Java] Master Class: Build Modern API & Micro services

gRPC [Java] Master Class: Build Modern API & Micro services

Sources: udemy
gRPC 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 e
5 hours 9 minutes 9 seconds
Java Multithreading, Concurrency & Performance Optimization

Java Multithreading, Concurrency & Performance Optimization

Sources: udemy
If you had your own jet plane, would you drive it to the grocery store, or fly it on a tour around the world? Today every computer and phone comes with immense computing power a...
5 hours 16 minutes 23 seconds
Learn Java Unit Testing with Junit & Mockito in 30 Steps

Learn Java Unit Testing with Junit & Mockito in 30 Steps

Sources: udemy
Learn Mockito and JUnit - the most popular Java unit testing and mocking frameworks - with 25 Examples. Writing Great Unit Tests distinguishes Good Programmers
4 hours 44 minutes 35 seconds
Ultimate Java Part 2: Object-oriented Programming

Ultimate Java Part 2: Object-oriented Programming

Sources: codewithmosh (Mosh Hamedani)
Heard about object-oriented programming, but not sure what it is? Object-oriented programming (OOP) is a popular style of programming. It comes up in technical interviews often ...
3 hours 41 minutes 47 seconds
Data Structures & Algorithms !

Data Structures & Algorithms !

Sources: udemy
Learn data structures and algorithms from scratch. Start with basic data structures and work your way up to intermediate. This course is for all those who want
28 hours 40 minutes 46 seconds