Browse Course Material
  • Syllabus

  • Software

  • References

  • Unit 1

    • Introduction to 6.00
    • Core Elements of a Program
    • Problem Solving
    • Machine Interpretation of a Program
    • Objects in Python
    • Recursion
    • Debugging
    • Efficiency and Order of Growth
    • Memory and Search Methods
    • Quiz 1
  • Unit 2

    • Hashing and Classes
    • OOP and Inheritance
    • Introduction to Simulation and Random Walks
    • Some Basic Probability and Plotting Data
    • Sampling and Monte Carlo Simulation
    • Statistical Thinking
    • Using Randomness to Solve Non-random Problems
    • Curve Fitting
    • Optimization Problems and Algorithms
    • More Optimization and Clustering
    • Quiz 2
  • Unit 3

    • More Clustering
    • Using Graphs to Model Problems, Part 1
    • Using Graphs to Model Problems, Part 2
    • Dynamic Programming
    • Avoiding Statistical Fallacies
    • Queuing Network Models
    • What Do Computer Scientists Do?
    • Final Exam
  • Resource Index

Course Info

Instructor:
  • Prof. John Guttag
Course Number:
  • 6.00SC
Departments:
  • Electrical Engineering and Computer Science
As Taught In: Spring 2011
Level: Undergraduate

Topics

  • Engineering
    Computer Science

Learning Resource Types

theaters Lecture Videos
theaters Recitation Videos
assignment_turned_in Problem Sets with Solutions
grading Exams with Solutions
menu_book Online Textbook
assignment_turned_in Programming Assignments with Examples
MIT OpenCourseWare
  • search
  • Give Now
  • About OCW
  • Help & Faqs
  • Contact Us
MIT OpenCourseWare
search Give now
About OCW
help & faqs
contact us
Course Info
Introduction to Computer Science and Programming
  • Syllabus

  • Software

  • References

  • Unit 1

    • Introduction to 6.00
    • Core Elements of a Program
    • Problem Solving
    • Machine Interpretation of a Program
    • Objects in Python
    • Recursion
    • Debugging
    • Efficiency and Order of Growth
    • Memory and Search Methods
    • Quiz 1
  • Unit 2

    • Hashing and Classes
    • OOP and Inheritance
    • Introduction to Simulation and Random Walks
    • Some Basic Probability and Plotting Data
    • Sampling and Monte Carlo Simulation
    • Statistical Thinking
    • Using Randomness to Solve Non-random Problems
    • Curve Fitting
    • Optimization Problems and Algorithms
    • More Optimization and Clustering
    • Quiz 2
  • Unit 3

    • More Clustering
    • Using Graphs to Model Problems, Part 1
    • Using Graphs to Model Problems, Part 2
    • Dynamic Programming
    • Avoiding Statistical Fallacies
    • Queuing Network Models
    • What Do Computer Scientists Do?
    • Final Exam
  • Resource Index

Recursion

lec06.py

arrow_back browse course material library_books
Description:

This resource is a supporting file for recursion.

file_download Download File

Course Info

Instructor:
  • Prof. John Guttag
Course Number:
  • 6.00SC
Departments:
  • Electrical Engineering and Computer Science
As Taught In: Spring 2011
Level: Undergraduate

Topics

  • Engineering
    Computer Science

Learning Resource Types

theaters Lecture Videos
theaters Recitation Videos
assignment_turned_in Problem Sets with Solutions
grading Exams with Solutions
menu_book Online Textbook
assignment_turned_in Programming Assignments with Examples
MIT Open Learning
Accessibility Creative Commons License Terms and Conditions

MIT OpenCourseWare is an online publication of materials from over 2,500 MIT courses, freely sharing knowledge with learners and educators around the world. Learn more

Accessibility Creative Commons License Terms and Conditions

PROUD MEMBER OF : Open Education Global

© 2001–2022 Massachusetts Institute of Technology

  • facebook
  • instagram
  • twitter
  • youtube
  • LinkedIn