English | MP4 | AVC 1280×720 | AAC 48KHz 2ch | 2h 10m | 397 MB

Recursion is part of the very fabric of computer science and software development, and whether you rarely use it or if it’s a key part of your development, there’s a good chance recursion is happening behind the scenes. Recursion is a powerful tool in breaking down complex problems into more manageable segments, and knowledge of recursion is a desirable trait that employers look for in developer positions. In this course, Robin Andrews takes a deep dive into the concepts, techniques, and applications of recursion using Python. He starts with some real-world examples of recursion, and then shows how it pertains to software development. He covers classic recursive algorithms like factorials and Fibonacci numbers, before showing how to write recursive algorithms in Python through practice exercises. After completing this course, you will have a better idea of how to use recursive algorithms to solve a wide range of software development issues.**+ Table of Contents**

**Introduction**

1 The power of recursion

2 What you should know

3 Working with GitHub

**Introduction to Recursion**

4 The concept of recursion

5 Why recursion is important

**The Fundamentals of Recursion**

6 The ingredients of a recursive algorithm

7 Recursion in action

8 The factorial function Iterative version

9 A recursive factorial function

10 Winding and unwinding the call stack in recursion

11 Challenge Fix the recursive algorithm

12 Solution The fundamentals of recursion

**Classic Recursive Algorithms in Python**

13 Recursive Fibonacci function in Python

14 Recursive sum function in Python

15 Recursive greatest common divisor function in Python

**Practice Writing Recursive Algorithms in Python**

16 Recursive multiplication algorithm in Python

17 Recursive exponentiation algorithm in Python

18 String length recursive algorithm

**Sorting Data Using Recursion in Python**

19 Introduction to quicksort

20 Coding the quicksort algorithm in Python

21 Challenge Check your understanding of quicksort

22 Solution Check your understanding of quicksort

**Data Traversal Using Recursion**

23 Traversing a Linked List using recursion

24 Traversing a tree using recursion Overview

25 Traversing a tree using recursion Python implementation

26 Challenge Tree traversal

27 Solution Tree traversal

**Optimizing Recursion in Python**

28 Memory considerations with recursive algorithms

29 Memoization in Python

30 Tail call optimization in Python

**Drawing Fractals Using Recursion in Python**

31 H-tree fractal using Python Turtle graphics

32 Sierpinski triangle

**The Towers of Hanoi A Classic Recursive Puzzle**

33 Introduction to the Towers of Hanoi puzzle

34 Coding the Towers of Hanoi puzzle in Python

**Conclusion**

35 Recursion vs. iteration

36 Conclusion

Resolve the captcha to access the links!