Mosh Hamedani - The Ultimate Data Structures & Algorithms: Part 3
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.
So, why are data structures so important these days?
Data structures and algorithms are patterns for solving problems. Developers who know more about data structures and algorithms are better at solving problems. 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.
A complex topic made simple
That’s why I made this course. I want to demystify data structures and algorithms once and for all.
I remember being hopelessly confused when my college lecturer tried to teach it, many moons ago. So I had to teach myself. Now I’m an expert on the topic, and I want to save you the dozens of hours I wasted at the library trying to wrap my head around it.
Packed with the most popular interview questions and step-by-step solutions
By the end of this course…
You’ll be able to:
Ace your next coding interview
Write better, faster code
Become a better developer
Improve your problem solving skills
Master computer science fundamentals
Implement all the essential data structures from scratch
Master dozens of popular algorithms
What you're going to learn
This course is the third of a series. In the first part, we covered the linear data structures (Arrays, Linked Lists, Stacks, Queues and Hash Tables). In the second part, we covered the non-linear data structures (Binary Trees, AVL Trees, Heaps, Tries and Graphs). Part 3 explores additional algorithms that every developer must study.
Here's what you're going to learn in this part:
String Manipulation Algorithms
This is the most comprehensive data structures and algorithms series online. Every example and exercise is picked from popular interview questions asked by Google, Microsoft, Amazon and other big companies.
Most data structure books and courses are too academic and boring. They have too much math and their code looks ugly, old and disgusting! This course is fun and easy to follow and shows you how to write beautiful code like a software engineer, not a mathematician.
Who is this course for?
Anyone preparing for a coding job interview
Computer science students whose lecturers failed to explain the topics
Self-taught developers who missed out on a computer science degree
Anyone who wants to become a better developer
In this course, I use Java to teach the concepts but you can apply these concepts in any programming language. Our focus is on data structures and algorithms, not programming languages and tools.
All you need to take this course are some basic programming skills. If you know variables, loops, and conditional statements, you're good. If you need a quick refresher to get up to speed with Java syntax, you can watch the first part of my Java series.
Ideally, you should have taken the first two parts of this series as this part progresses faster and assumes the knowledge of the topics covered in the previous parts.
Get immediately download Mosh Hamedani - The Ultimate Data Structures & Algorithms: Part 3
Hi! My name is Mosh Hamedani. I'm a software engineer with two decades of experience. I've taught millions of people how to code and how to become professional software engineers through my online courses and YouTube channel.
I believe coding should be fun and accessible to everyone.
Getting Started (1m)
1- Introduction (0:45)
2- Course Code
Follow Me Around
Sorting Algorithms (75m)
1- Introduction (1:00)
2- Bubble Sort (3:10)
3- Bubble Sort- Implementation (6:24)
4- Selection Sort (2:41)
5- Selection Sort- Implementation (3:23)
6- Insertion Sort (3:58)
7- Insertion Sort- Implementation (2:28)
8- Merge Sort (5:06)
9- Merge Sort- Implementation (8:04)
10- Quick Sort (3:14)
11- Partitioning (6:01)
12- Quick Sort- Implementation (9:00)
13- Counting Sort (4:08)
14- Counting Sort- Implementation (2:48)
15- Bucket Sort (4:18)
16- Bucket Sort- Implementation (7:07)
Searching Algorithms (35m)
1- Introduction (0:46)
2- Linear Search (1:04)
3- Linear Search- Implementation (1:36)
4- Binary Search (3:47)
5- Binary Search- Recursive Implementation (4:52)
6- Binary Search- Iterative Implementation (2:14)
7- Ternary Search (3:27)
8- Ternary Search- Implementation (4:12)
9- Jump Search (3:16)
10- Jump Search- Implementation (3:54)
11- Exponential Search (2:47)
12- Exponential Search- Implementation (2:55)
String Manipulation Algorithms (60m)
1- Introduction (0:35)
3- Useful Java Methods
4- Count Vowels (4:49)
5- Reverse a String (5:40)
6- Reverse Words (6:13)
7- Rotations (5:48)
8- Remove Duplicates (3:12)
9- Most Repeated Char (7:12)
10- Sentence Capitalization (6:38)
11- Anagrams- Using Sorting (6:07)
12- Anagrams- Using Histogramming (6:18)
13- Palindrome (4:25)
14- Course Wrap Up (1:06)
Read more: https://archive.ph/017gb