Recursion For Programmers

  • Overview
  • Curriculum
  • Instructor
  • Review

About This Course

Algorithms and Data Structures: Recursion, the Stack and Trees

Recursion is a powerful programming technique. A function that calls itself recursively not only saves programming effort and avoids repetition but it can also be used to navigate complex structures such as Trees and Class Hierarchies.

This is an intermediate-to-advanced level course. It is aimed at programmers who can already program confidently in one or more programming languages. It is not appropriate for beginners.

The courses includes numerous short sample programs to show how recursion works. There are samples written in C, Ruby and C#. However, you don’t need to program in those languages to follow this course. Recursion works the same way in all mainstream programming languages. This course explains the theory and the practice of recursion. You can use the techniques that are taught to write recursive functions in whichever language you prefer: C, C#, Java, JavaScript, Python, Basic, Pascal and others. The course is not about any specific language.

This is what you will learn…

  • What is recursion?

  • How variables are scoped in recursive functions

  • How recursive functions return values

  • The Stack and Stack Frames

  • Debugging recursive functions

  • Recursion v Iteration

  • Stack Corruption, and how to avoid it

  • Infinite Recursion, and how to avoid it

  • Recursing Fibonacci Numbers

  • Recursing a Class Hierarchy

  • Trees and recursion

  • Navigating subdirectories recursively

  • Code samples provided in C, Java, Ruby...

  • Call functions recursively

  • Understand how recursion works

  • Understand the stack and stack frames

Instructor

Profile photo of Huw Collingbourne
Huw Collingbourne

Huw Collingbourne is the technology director at SapphireSteel Software, developers of programming tools for Microsoft Visual Studio. He is author of The Little Book Of C, The Little Book Of Pointers and The Little Book Of Recursion from Bitwise Books and of The Book Of Ruby from No Starch Press. He runs Bitwise Courses and teaches courses on a range...

Review
4.9 course rating
4K ratings
ui-avatar of Enrique Lau
Enrique L.
5.0
1 year ago

He is going through a very detailed description of why the recursive value of n decremented after it and total equaled 3. My mind started to ponder about stacks and that was mentioned towards the end of the video. I’m very happy thus far with this course.

  • Helpful
  • Not helpful
ui-avatar of Thomas Brodbeck
Thomas B.
5.0
2 years ago

Für mich hat sich dieser Kurs gelohnt. Ein Themengebiet, innerhalb des Programmierens, welches gut und verständlich erklärt wird. Dankeschön!

  • Helpful
  • Not helpful
ui-avatar of Vasanth Sundaravelu
Vasanth S.
3.0
2 years ago

Course is good for beginners to CS/programming.

  • Helpful
  • Not helpful
ui-avatar of Kitesurfer Coder
Kitesurfer C.
3.0
2 years ago

This felt like a waste of my time. It lacks a description of the steps one has to take to solve recursion problems. It may be a good class for novice programmers

  • Helpful
  • Not helpful
ui-avatar of Mick Jones
Mick J.
5.0
3 years ago

While this was a one-topic course with limited scope, that topic was covered well.

  • Helpful
  • Not helpful
ui-avatar of Jaime G
Jaime G.
5.0
3 years ago

If you are studying for coding interviews, def take this course. This course not only focuses on understanding recursion but also debugging.

  • Helpful
  • Not helpful
ui-avatar of Sharon Forbes
Sharon F.
5.0
3 years ago

@Huw Collingbourne is by far the best instructor on UDEMY. He carefully explained recursion and provided great examples and documentation. I learn best from seeing code in action and being able to walk through it so Huw's classes are a good match for me.

  • Helpful
  • Not helpful
ui-avatar of Carlos Vazquez
Carlos V.
3.0
4 years ago

It is a very good course technically speaking, however, I do not rate it with 5 stars because I was expecting more analogies, more in depth explanations about what recursion is, not to just get examples of recursion being applied. The use of C and Ruby did not help much either.

  • Helpful
  • Not helpful
ui-avatar of Yuriy Yakubskiy
Yuriy Y.
4.5
4 years ago

Course is very useful! Thanks. But programming style of the author sometimes looks not optimal.

  • Helpful
  • Not helpful
ui-avatar of Jomdu Dulom
Jomdu D.
4.5
4 years ago

Great course!

  • Helpful
  • Not helpful
Leave A Reply

Your email address will not be published. Required fields are marked *

Ratings

Courses You May Like

Lorem ipsum dolor sit amet elit
Show More Courses