Recursion in Programming - Full Course

preview_player
Показать описание
Recursion is a powerful technique that helps us bridge the gap between complex problems being solved with elegant code. Within this course, we will break down what recursion is, why you would and wouldn’t want to use it and look at a variety of examples for how it can be used.

We’ll break down recursion with all sorts of data-structures, animations, debugging and call-stack analysis to get a deeper understanding to these principles.

The code is written in Java, but the principles are agnostic to any language.

✏️ This course was developed by The Simple Engineer. Find him online:

⭐️ Course Contents ⭐️
⌨️ (0:00:00) Introduction
⌨️ (0:00:42) What Is Recursion?
⌨️ (0:00:50) Explaining Recursion via ATM Analogy
⌨️ (0:04:56) Explaining Recursion via Essay Revision Analogy
⌨️ (0:06:22) Summarizing What Recursion Is
⌨️ (0:07:15) Why & Why Not Recursion
⌨️ (0:10:57) Understanding The Call Stack
⌨️ (0:11:32) Call Stack Analogy
⌨️ (0:16:35) Recursion With Strings Introduction
⌨️ (0:16:50) String Reversal Explanation
⌨️ (0:20:47) String Reversal Call Stack Animation
⌨️ (0:22:59) Palindrome Explanation
⌨️ (0:25:46) Palindrome Call Stack Animation
⌨️ (0:27:46) Recursion With Numbers
⌨️ (0:28:02) Decimal To Binary Explanation
⌨️ (0:31:12) Decimal To Binary Code & Debug
⌨️ (0:34:33) Sum of Natural Numbers Explanation
⌨️ (0:36:17) Sum of Natural Numbers Code & Debug
⌨️ (0:38:51) Divide & Conquer Algorithms
⌨️ (0:39:27) Binary Search Animation & Explanation
⌨️ (0:43:50) Fibonacci Explanation
⌨️ (0:45:54) Fibonacci Animation
⌨️ (0:49:07) Merge Sort Explanation & Animation
⌨️ (0:53:21) Merge Sort Code & Debug
⌨️ (1:09:36) Linked Lists
⌨️ (1:09:49) Linked List Reversal Animation
⌨️ (1:14:48) Linked List Code & Debug
⌨️ (1:19:52) Merge Two Sorted Linked Lists Animation
⌨️ (1:25:53) Merge Two Sorted Linked Lists Code & Debug
⌨️ (1:29:02) Trees
⌨️ (1:29:14) Insert Value Into Binary Search Tree Animation
⌨️ (1:31:32) Insert Value Into Binary Search Tree Code Walkthrough
⌨️ (1:33:43) Insert Value Into Binary Search Tree Call Stack Animation
⌨️ (1:35:11) Print All Leaf Nodes Explanation
⌨️ (1:37:02) Print All Leaf Nodes Code & Debug
⌨️ (1:41:09) Graphs
⌨️ (1:41:21) Depth-First Search Animation
⌨️ (1:42:58) Depth-First Search Code Walkthrough
⌨️ (1:45:38) Recursion Optimizations
⌨️ (1:45:44) Memoization & Caching
⌨️ (1:47:59) Tail-Call Recursion
⌨️ (1:50:48) Conclusion

🎉 Thanks to our Champion and Sponsor supporters:
👾 Wong Voon jinq
👾 hexploitation
👾 Katia Moran
👾 BlckPhantom
👾 Nick Raker
👾 Otis Morgan
👾 DeezMaster
👾 Treehouse
👾 AppWrite

--

Рекомендации по теме
Комментарии
Автор

0:00 "When learning about recursion, it can seem like you are going back to the beginning" XDXDXD
Why is no one talking about this neat pun

reapermerc
Автор

This is what the education system needs. Well-put-together courses that are accessible to anyone with a computer. I'm sure you'll continue to get likes and subscriptions well into the future because of this gem. Well done.

marklord
Автор

Around 13:20 is exactly the kind of explanation that I was looking for. I understood how recursion works when a human does it, but not how the computer would handle it. The call stack stuff cleared this up for me. Thank you!

michaelcamp
Автор

The way in which the lecture has been made is awesome... From the smallest of concepts to advanced concepts. I enjoyed learning.

snehashishghosh
Автор

Google algo needs to put this video on top when searching for recursion

pravatyadav
Автор

THERE CANNOT BE A BETTER VIDEO A RECURSION.
YOU EXPLAINED ALL THE CONCEPTS AND PROBLEMS SO WELL.

raghavsharma
Автор

Thanks for the great content! It covers so many different areas of software development.

Ericsicons
Автор

I have watched many videos on Recursion and i can assure you this is the best way that has been explained Recursion so far. Thank you all provided and posted this video here so that million of people can universally learn this.🙏🙏🙏

best
Автор

The analogies and snippets of code are truly amazing. Thank you for this course!

polimorphic
Автор

This. is.... BEAUTIFUL. ABSOLUTELY BEAUTIFUL LIKE DAMN. Why isn't anyone teaching like this guy?
Hats off to you!

advaithsahasranamam
Автор

I feel like the first 5 minutes of this video helped me understand recursion better than my CS classes in college. I ended up switching tracks away from CS because I couldn't wrap my head around recursion and trees...

jasonistheking
Автор

Man thank you so much for your explanations of how recursive calls work on the call stack, and then also how to interpret the call stack through debugging. This cleared up so much confusion for me!

billiamreynolds
Автор

In the beginning when I started learning programming I didn't think recursion is that much important but when I started to learn DSA. I figured it out recursion is the soul of DSA and now I am learning, I have crossed 1:30 hr video and it has been so much fun and easy to grab. The tutor is really good ...

animemotivationx
Автор

I sometimes feel guilty as i dont pay any fees to them and yet dont have time to study all this things :(

Archius_
Автор

There are no words to praise you about your explanation and content, Really Mind blowing for me, Super content thank you man

mylaramvenkatesh
Автор

Thank you so much for the video. This is the best explanation I've got on recursion after several books and YouTube videos. The analogy where people were waiting in a queue (for ATM) is in my view what set my mind free on how to go about recursion. Now I know how and why a problem is attacked recursively.
Cheers from me!

ahmedbello
Автор

The best Recursion Video available on internet.
Thanks for making the video.

chewbacca
Автор

This the best tutorial of recursion I have ever seen on youtube
such a great simple explanation really from zero to hero

xzoldik
Автор

First, I've always wanted to know about this. And here you are!!

yoursamrit
Автор

Awesome course with explanation about how actually works well known data structures using recursion! Hats off, man :)

MrVernuk