Top 7 Algorithms for Coding Interviews Explained SIMPLY

  Рет қаралды 236,417

Codebagel

Codebagel

Күн бұрын

Today we'll be covering the 7 most important algorithms you need to ace your coding interviews and land a job as a software engineer. We'll be showing visualizations, common uses, and time complexity. Hope you enjoy!
📘 Chapters
0:00 - Intro
0:57 - Binary Search
3:43 - Depth-First Search
6:39 - Breadth-First Search
9:13 - Insertion Sort
10:57 - Merge Sort
12:52 - Quick Sort
15:57 - Greedy
🔗 Resources
Data Structures Video - • Top 7 Data Structures ...
Big O Video - • Big O in 2 Minutes
Recursion Video - • Recursion in 2 Minutes
Coding Interviews at FAANG Video - • Software Engineering I...
🎵 Music
Music Courtsey of Epidemic Sound
Wizzle - Guustavv
Slapperoni Pizza - Jobii
Unfettered - Jobii
At My Own Pace - Sarah, the Illstrumentalist
Deadlines - Dylan Sitts
Sleepy + Hungry - baegel
Tea Tree - Jobii
Taargus - Jobii
Pick Up Your Phone Please - baegel
Brontosaurus - Dylan Sitts
#coding #softwareengineer #algorithm

Пікірлер: 145
@Codebagel
@Codebagel Жыл бұрын
Hey guys! Sorry for lack of uploads lately, hopefully this 20 MINUTE comprehensive guide to algorithms makes up for it a bit! Please like and share with friends, I worked really hard on it and want it to help lots of people!
@ReluctantSpirit
@ReluctantSpirit Ай бұрын
This video is one of the finest and well defined educational video on algorithms.
@shadowrl7637
@shadowrl7637 2 ай бұрын
Algorithms Binary Search: - Used to find a specific element in a sorted list efficiently. - Inefficient: O(n) for linear search, incrementally guessing from start to end. - Efficient: O(log2(n)) for binary search, repeatedly dividing the search interval in half until the correct element is found. Depth-First Search (DFS): - Begins at the root node and explores as far as possible along each branch before backtracking. - Utilizes a visited array to track already visited nodes. - Continues backtracking until all nodes are visited. - Real-life example: Solving a maze by systematically exploring paths until the exit is found. Breadth-First Search (BFS): - Looks at every node at one level before going down to the next level. - Utilizes a visited array to track already visited nodes and a queue to keep track of neighbors. - Begins at the root node and adds it to the visited array and all its connected nodes to the queue, then continues to explore nodes level by level. - Real-life example: Chess algorithms predict the best move by exploring possible moves at each level of the game tree. - Runtime: O(V + E), where V is the number of vertices and E is the number of edges. Insertion Sort: - Examine’s each element in the list, comparing it with the previous elements and shifting them to the right until the correct position for insertion is found. - Simple sorting algorithm suitable for small datasets or nearly sorted arrays. - Runtime: - Best case: O(n) when the list is already sorted. - Worst case: O(n^2) when the list is sorted in reverse order. - Efficient for small or nearly sorted lists, but inefficient for large unsorted lists. Merge Sort: - A divide-and-conquer sorting algorithm that breaks the problem into smaller subproblems and solves them recursively. - Starts by splitting the array into halves recursively until each subarray consists of single elements. - Merges pairs of subarrays by comparing elements and placing them in sorted order. - Continues merging subarrays until the full array is sorted. - Runtime: O(n log(n)) in both best and worst cases, making it efficient for large datasets. Quick Sort: - A complex sorting algorithm that follows the divide-and-conquer approach and is recursive. - Selects a pivot element, ideally close to the median, and partitions the list into two sublists: one with elements greater than the pivot and the other with elements less than the pivot. - Continues the process recursively on each sublist until the entire list is sorted. - Utilizes a pivot element that is moved to the end of the list, with pointers positioned at the leftmost and rightmost elements. - Compares the elements pointed to by the left and right pointers, swapping them if necessary, until the pointers cross. - Once the pivot is correctly positioned, the process repeats on the sublists. - Runtime: - Best case: O(n log(n)), when the pivot consistently divides the list into approximately equal halves. - Worst case: O(n^2), when the pivot selection consistently results in unbalanced partitions. Greedy Algorithm: - A problem-solving approach that makes the locally optimal choice at each stage with the hope of finding a global optimum. - May not always guarantee an optimal solution but is often simple and efficient. - Real-life example: Finding the shortest path in a weighted graph using Dijkstra's algorithm, where at each step, the algorithm selects the vertex with the smallest distance from the source.
@Leonhart_93
@Leonhart_93 Ай бұрын
Good work, works for adding to quick documentation
@ptd3v
@ptd3v Ай бұрын
My man
@Lu3ck
@Lu3ck Ай бұрын
Not all hero’s wear capes
@bb-xj9ed
@bb-xj9ed 6 ай бұрын
thank you bro, my gf broke up with me so i have nothing but to learn algos, your video made me laugh at the greedy algo part. thank you u earned a sub
@vedagyasharma5438
@vedagyasharma5438 3 ай бұрын
stay strong brother!
@ryostyles9904
@ryostyles9904 3 ай бұрын
Great choice bro
@airman122469
@airman122469 3 ай бұрын
Sounds like you just need some greedy algos and a creative application of the traveling salesman problem. (Routes through all bars, and pickup techniques)
@kaushalrautela6
@kaushalrautela6 3 ай бұрын
Broke up and still leveling up GOD mode acticated 🤖
@wadzanaikanongovere4798
@wadzanaikanongovere4798 2 ай бұрын
Looks like someone was greedy 😂😂😂😂
@Redyf
@Redyf 3 ай бұрын
Code examples would help a lot too, great video
@originallyme135
@originallyme135 6 ай бұрын
This video is amazing! I was so surprised when I went to subscribe that you only had 5k subscribers, from the quality of these videos I expected at least 100k! Thank you for your awesome work, you really helped me a lot
@tamalpaul4928
@tamalpaul4928 2 ай бұрын
Brother, You gotta be my best teacher on youtube. You making lesson just the way I want. You start a topic by first being pause. Then continue with the easiest way possible. Please make more videos like these.
@i_am_spex6312
@i_am_spex6312 4 ай бұрын
Dude , you explain so well. Thank you
@antonthordarson3610
@antonthordarson3610 Ай бұрын
This is great, Very well explained and straight to the point. Way better than any teacher I have seen explain this..
@thaisb.7708
@thaisb.7708 Ай бұрын
Amazing content, very clearly explained and the illustrations helped a lot, thank you for sharing.
@khndokar2382
@khndokar2382 4 ай бұрын
Love your videos ! please do more, ive learned so much
@MadhuKumar-zi4qp
@MadhuKumar-zi4qp 3 ай бұрын
easy to understand bro.. great. Thanks!
@hassanriaz4274
@hassanriaz4274 10 күн бұрын
Thank you so much for this detailed video bro👊👊
@omgh8287
@omgh8287 Жыл бұрын
I enjoyed the explanations and presentation about the different important algorithms in this video. I am subscribing to this channel in the hope of similar good content in the future. Wish you the best with growing your channel :)
@Codebagel
@Codebagel Жыл бұрын
Thanks so much! I’m glad you enjoyed it. Content will definitely continue to get even better, so I’m happy you’re going to stick around :)
@ngocchaunguyen1195
@ngocchaunguyen1195 2 ай бұрын
This is an incredible video. I didn't understand most algorithms as a student, because I focused on theories and code. This video helps me save time in understanding these popular algorithms. Indeed, I rarely use them in my work, it is simply because we don't have many situations to apply. I usually use linear search in JavaScript. there was a time I had a problem with sort of 10,000 objects. I have to use the binary-sort library without understanding. Once again, thanks for your video.
@durantburner7428
@durantburner7428 Жыл бұрын
With content like this you'll be big in no time, excited for what's to come!
@Codebagel
@Codebagel Жыл бұрын
Thank you so much! I really appreciate the support!
@katurr_Real_Estate
@katurr_Real_Estate 6 күн бұрын
This is the best explained algorithm I came across
@LastShade
@LastShade 5 күн бұрын
For the traveling salesman, I would use a set of controlled variables that you could programmatically cycle through to optimize results. One example would be a tolerance on overlapping routes. Cycle through 0-10 overlaps and calculate results. Compare results. As long as you keep the number of variables and variable values low, it’s a great way to squeeze out extra optimization.
@mesta3329
@mesta3329 2 ай бұрын
Great job bro. It was very interesting & easy to understant
@mitkomilev4690
@mitkomilev4690 2 ай бұрын
Good explanation, thank you. A small note for the quicksort - keep in mind that the unshift operation at 13:44 is really computational costly as you will have to unshift all elements to the left. It is better to just swap the chosen pivot element with the last one.
@a.rohimsama7222
@a.rohimsama7222 Ай бұрын
Great explanation! Thank you
@vasylshkrum8007
@vasylshkrum8007 2 ай бұрын
Great job, mate!
@yuqingpeng6523
@yuqingpeng6523 Жыл бұрын
Very detailed explanation as always! I learnt a lot, thank you so much!!
@Codebagel
@Codebagel Жыл бұрын
You’re welcome! Thanks for the kind words :)
@NormieDead
@NormieDead Ай бұрын
thank you soo much. i know this could have taken so much affrords to make .
@akshaypatelindia
@akshaypatelindia Ай бұрын
Really impressive contents mate keep going . appreciate you'r contents and efforts. :)
@wlqpqpqlqmwnhssisjw6055
@wlqpqpqlqmwnhssisjw6055 Жыл бұрын
You should explain how machine learning works and more of that types of videos too ,your explanation is on another level
@Codebagel
@Codebagel Жыл бұрын
Thanks so much! I’ll definitely tackle machine learning at some point in the near future, it’s on the list of future videos!
@MeditateRelaxEtcetera
@MeditateRelaxEtcetera 2 ай бұрын
Great explanation!👍
@ShengjunSun-on1jr
@ShengjunSun-on1jr 15 күн бұрын
Great contents! Thank you!
@abyss_v
@abyss_v 3 ай бұрын
Great video, helped me a lot
@franciagarciaromero2589
@franciagarciaromero2589 2 ай бұрын
Loved this, please make more videos
@ranvirkumar108
@ranvirkumar108 7 ай бұрын
Great work men...
@Antariksha
@Antariksha Жыл бұрын
Please keep going, your explanations are on point! Subscribed.
@Codebagel
@Codebagel Жыл бұрын
Thanks so much!
@ann.z.z.
@ann.z.z. Ай бұрын
Thank you so much, amazing content
@catarinaivf
@catarinaivf 6 ай бұрын
It was really great! Thanks
3 ай бұрын
Amazing video!! thank you.
@puneetparashar2935
@puneetparashar2935 23 күн бұрын
Love your videos.❤
@bonginscandinavia
@bonginscandinavia Ай бұрын
Great explaination. 👍
@user-xs9el5ek6n
@user-xs9el5ek6n 2 ай бұрын
Good work bro keep on doing 👍
@simonetumolillo9400
@simonetumolillo9400 Жыл бұрын
I love the fact that you took the time for writing the outcome numbers of TSP in the comments haha. Nice work as always, keep it up!
@Codebagel
@Codebagel Жыл бұрын
Haha yeah, to me that’s such a strong way to explain why certain algorithms are used. I’m glad you enjoyed!
@coffeewithjava4
@coffeewithjava4 11 күн бұрын
Explaining Data Structures with Code Examples would be more beneficial. This video is informative too.
@ektasingh5967
@ektasingh5967 20 күн бұрын
I love all of your videos. Amazing they are. Please make videos on System Design as well.
@ankiitamalik
@ankiitamalik 2 ай бұрын
Thanks🙏 very clear explanation
@TrishalWalia
@TrishalWalia 26 күн бұрын
Best Explanation!
@rutwikpatil8491
@rutwikpatil8491 14 күн бұрын
Amazing video !!!
@seannaeger9563
@seannaeger9563 2 ай бұрын
I've been trying to understand these concepts for ages. Your videos rock! Even if you spell neighbor wrong. 🙂
@servantofthelord8147
@servantofthelord8147 7 ай бұрын
Thank you :)
@chamarr
@chamarr Жыл бұрын
goated video🐐🐐
@nurfuis
@nurfuis 2 ай бұрын
Thank you for the video =)
@therealzeon
@therealzeon Жыл бұрын
I know ur working hard my guy but keep pushing you'll breeze to 100 k by the end of the year dw 💪🧠 Keep up the amazing content man
@Codebagel
@Codebagel Жыл бұрын
Thanks so much! Been such a grind lately with everything going on, but definitely going to start pumping out more videos so that’s good :)
@LucasNunes-vg6zk
@LucasNunes-vg6zk 3 ай бұрын
Excelent content 🚀🚀
@llmll6447
@llmll6447 Ай бұрын
Very good explanation
@voegel
@voegel Жыл бұрын
Thank you for this comprehensive video! 21 minutes is a good length. Btw, did your job interviews went well?
@voegel
@voegel Жыл бұрын
Oh and here is some advice that I think might be helpful: I know music in videos is vastly used, but mostly it‘s a bit too much. The music in this video was okay, but I actually liked the music-free videos more. They *seem* to me better structured/clean. I know this video has the same great content as always, but (maybe it‘s just me) I have problems following you. Idk, maybe I‘m wrong and using music is a good idea ^^ Just a friendly tip :)
@Codebagel
@Codebagel Жыл бұрын
@@voegel thank you for the feedback! I’ve been experimenting a bit with the music, but I get that it might be a bit hard to follow with it. I’m going to experiment a bit with audio levels/not including it at all, thanks for letting me know :)
@kikocassola
@kikocassola 2 ай бұрын
Great job 👏👌😉
@aninditabatra3810
@aninditabatra3810 8 ай бұрын
great video
@arthurmorgan718
@arthurmorgan718 Жыл бұрын
Your content is literally quality over quantity , keep the good work man
@Codebagel
@Codebagel Жыл бұрын
Thank you! I really appreciate it :)
@K9Megahertz
@K9Megahertz 2 ай бұрын
You don't really need to keep track of the visited nodes in a DFS. You just visit the left node first and then the right node, or in the case of a tree with n children per node, just visit them in sequential order. At least if you're doing it recursively. Maybe there's a reason to keep track of the nodes outside of the recursion for other purposes but not for the actual traversal.
@hlubradio2318
@hlubradio2318 15 күн бұрын
Thanks I'll subscribe for your hard work. Now to implement them in Python.
@FaheemQazi
@FaheemQazi 2 ай бұрын
Hi, i really like the graphical representation of these topics in simple manner, however i think that @10:40 the explanation of bubble sort is mentioned as insertion sort.
@khndokar2382
@khndokar2382 5 ай бұрын
can you please upload the separate data structure videos? i really liked the hashmap one
@Math_kru_earng
@Math_kru_earng Ай бұрын
thank you!
@Rajukumarmsbsndb
@Rajukumarmsbsndb 2 ай бұрын
Hey! It was awesome.
@sujeet4410
@sujeet4410 Жыл бұрын
I was here before this channel exploded. Keep the contents coming.
@Codebagel
@Codebagel Жыл бұрын
Thanks so much Sujeet! I’ll keep working towards making better and better content for you to enjoy!
@aaryankedia3919
@aaryankedia3919 9 ай бұрын
Hey, Thanks for the video. I am a final year CSE student and I have the placement season starting soon. I am left with a lot of DSA. Could you suggest me with some tips?
@FunnySubmarine-ij4zk
@FunnySubmarine-ij4zk 3 ай бұрын
Thank you
@user-de4yn8rv9l
@user-de4yn8rv9l 4 ай бұрын
I really wonder how this video hasn't blown up after a whole year
@varanasikirankumar8501
@varanasikirankumar8501 2 ай бұрын
Best video ever watched
@hlubradio2318
@hlubradio2318 15 күн бұрын
This so weird. I leaned all these in 1994 to 1997 but never heard of greedy or maybe I did but I certainly remembered the shortest path algorithm which is greedy
@austinkry
@austinkry 2 ай бұрын
Man, this just helped me so much in ways I can't even explain. Took the entire time taking notes and all. Really appreciate the hard work that was put into this, like and sub from me cheers!
@tony310430
@tony310430 2 ай бұрын
no hay un video que te enseñe todo, al final debemos consumir mucho contenido de calidad e intentar quedarnos con lo positivo de dicho contenido para internalizarlo y realmente poder implementarlo de manera adecuada. Este video a mi criterio cumple con el criterio de ser un video de calidad.... No comenté en inglés porque siento que los hispano hablantes que no son angloparlantes merecen también hacerse notar en las cuentas de tecnología donde usualmente solamente se habla inglés
@archivegaming9112
@archivegaming9112 2 ай бұрын
nice !!!
@Daniel-jt3dn
@Daniel-jt3dn 2 ай бұрын
Excelente
@voegel
@voegel Жыл бұрын
Hey, I‘m wondering if you are still planning to make a video about how to pass the resume screening? That might be quite interesting :)
@Codebagel
@Codebagel Жыл бұрын
Yes, it’s actually the next video coming out! I’m hoping to get it finished and uploaded for Monday! :)
@Codebagel
@Codebagel Жыл бұрын
Okay so I didn’t finish it in time for Monday haha, had 2 last minute interviews come up. It will be out by tomorrow though, guaranteed!
@beeTechSE
@beeTechSE Ай бұрын
Wait for Dynamic programming video 😁🤘
@sreyakarmakar4248
@sreyakarmakar4248 2 ай бұрын
Dynamic Programming left the chat..🏃🏻‍♂️🏃🏻‍♂️ PS: amazing visuals & explanations. Thanks ❤
@kvelez
@kvelez 6 ай бұрын
Cool video.
@deniz.7200
@deniz.7200 3 ай бұрын
DFS and BFS require sorted binary trees to operate, right?
@muhannadalsabbagh8956
@muhannadalsabbagh8956 8 ай бұрын
Really appreciate your work but you are wrong about the insertion sort algorithm you explained the bubble sort insertion sort will compare each number with the previous numbers and put it in place. Hope you will fix the video
@panthrax555
@panthrax555 3 ай бұрын
I came here to say this. I've not heard of insertion sort before, this is definitely a Bubble sort.
@oulaoula349
@oulaoula349 Ай бұрын
Travelling salesman problem is à good support to practise genetic algorithms
@shawnedwards5369
@shawnedwards5369 2 ай бұрын
What's with the use of arrays over stacks?
@chamarr
@chamarr Жыл бұрын
can you possible make a video on how to code up these algorithms? that is what i have the most trouble with
@Codebagel
@Codebagel Жыл бұрын
Yes! That’s what’s coming out next! I’ll be doing kind of 8-10 minute in-depth videos explaining how the code works, and how to solve problems of using the algorithm! Stay tuned :)
@chamarr
@chamarr Жыл бұрын
@@Codebagel yessir goated youtuber🐐
@YoYouWildinBro
@YoYouWildinBro Жыл бұрын
When I get my coding gig in the future, I'm gonna look back at these videos and think "This is why I landed this job".
@Codebagel
@Codebagel Жыл бұрын
Wow, you have no idea how awesome that is to hear. Thank you so much for that, and I hope I can continue to keep helping you on your journey towards breaking into the tech industry!
@itsaaron6423
@itsaaron6423 Жыл бұрын
I learnt one and it never feels enough . 😅🥲
@ACBros_06
@ACBros_06 Ай бұрын
Nice
@rondlh20
@rondlh20 24 күн бұрын
11:48 How does this sorting work in detail?
@GenericInternetter
@GenericInternetter 2 ай бұрын
Greedy Algorithms prevent Analysis Paralysis. Good for coding and good for life. Sometimes in life you gotta just pick the immediately most beneficial step and jump into it.
@tonyg861
@tonyg861 2 ай бұрын
This is for the KZbin algorithm!!
@mydream8513
@mydream8513 4 ай бұрын
Bro i could gaurantee you that you can get a million sub in a year if u upload a video once per 3 days.
@egsnowindy
@egsnowindy Ай бұрын
Thanks for the video. Note: Merge sort is not properly explained. 1. it requires creation of temporary arrays of size equal to the sorted array. 2. the "merging" process itself is not highlighted in video.
@user-sp3ew1rs5m
@user-sp3ew1rs5m 4 ай бұрын
I rly wonder how those algorithms would help me to be better in solving coding problems
@Sachin-je7ue
@Sachin-je7ue 2 ай бұрын
Well explained but you mentioned binary search only works for sorted list but it is not true .It also works for unsorted.
@GenericInternetter
@GenericInternetter 2 ай бұрын
How can you magically know in advance the "median value" used in quick sort?
@carlospena98
@carlospena98 2 ай бұрын
Three fucking ads on a video ? I feel like I’m getting milked
@arkan7rb
@arkan7rb 2 ай бұрын
i have a channel and i know how its time consuming specially wonderful videos like yours sir thank you in all languages of the world greetings from Yemen
@aninditabatra3810
@aninditabatra3810 18 күн бұрын
🎉🎉
@phir9255
@phir9255 4 ай бұрын
Is Introduction to Algorithms a good book?
@alabhyapandey2999
@alabhyapandey2999 28 күн бұрын
Greedy is hard!
@MarkyGoldstein
@MarkyGoldstein 3 ай бұрын
Software engineers should first focus on real world problems, such as progressing standardizations and protocols, de-powerize monopolys, and then of course optimize
@VivanRangra
@VivanRangra 3 ай бұрын
where is dynamic programming ?
@siphiweparker6178
@siphiweparker6178 4 ай бұрын
Im about to become a chess grand master with BFS
@tskito7200
@tskito7200 2 ай бұрын
Binary Litht
@Noise3
@Noise3 8 күн бұрын
DFS 😅
@bb-xj9ed
@bb-xj9ed Ай бұрын
Heyo
Big O in 2 Minutes
2:54
Codebagel
Рет қаралды 21 М.
Top 7 Data Structures for Interviews Explained SIMPLY
13:02
Codebagel
Рет қаралды 93 М.
Teenagers Show Kindness by Repairing Grandmother's Old Fence #shorts
00:37
Fabiosa Best Lifehacks
Рет қаралды 34 МЛН
原来小女孩在求救#海贼王  #路飞
00:32
路飞与唐舞桐
Рет қаралды 63 МЛН
маленький брат прыгает в бассейн
00:15
GL Show Russian
Рет қаралды 3,7 МЛН
Top 7 Algorithms for Coding Interviews Visualized
33:45
Kantan Coding
Рет қаралды 17 М.
3 Types of Algorithms Every Programmer Needs to Know
13:12
ForrestKnight
Рет қаралды 419 М.
What does larger scale software development look like?
24:15
Web Dev Cody
Рет қаралды 1,2 МЛН
Whiteboard Coding Interviews: 6 Steps to Solve Any Problem
15:18
Fullstack Academy
Рет қаралды 354 М.
No-Nonsense Backend Engineering Roadmap
10:16
Codebagel
Рет қаралды 102 М.
How Data Structures & Algorithms are Actually Used
11:39
ForrestKnight
Рет қаралды 126 М.
I Solved 1583 Leetcode Questions  Here's What I Learned
20:37
ThePrimeTime
Рет қаралды 476 М.
10 weird algorithms
9:06
Fireship
Рет қаралды 1 МЛН
5 Signs of an Inexperienced Self-Taught Developer (and how to fix)
8:40
Самый маленький Iphone в мире!📱(@ghoul.arena)
0:22
Взрывная История
Рет қаралды 362 М.
Рекламная уловка Apple 😏
0:59
Яблык
Рет қаралды 799 М.