Lectures (Video)
- 1. Introduction
- 2. Operators and operands
- 3. Common code patterns
- 4. Functions
- 5. Floating point numbers
- 6. Bisection methods
- 7. Lists and mutability
- 8. Log, linear, quadratic, exponential algorithms
- 9. Binary search, bubble and selection sorts
- 10. Divide and conquer methods
- 11. Testing and debugging
- 12. Introduction to dynamic programming
- 13. Dynamic programming
- 14. Analysis of knapsack problem
- 15. Abstract data types, classes and methods
- 16. Encapsulation, inheritance, shadowing
- 17. Computational models
- 18. Presenting simulation results
- 19. Biased random walks
- 20. Monte Carlo simulations
- 21. Curve fitting, linear regression
- 22. Normal, uniform, and exponential distributions
- 23. Stock market simulation
- 24. What do computer scientists do?
Introduction to Computer Science and Programming
Course Summary
This course is based on 6.00 Introduction to Computer Science and Programming, Fall 2008 made available by Massachusetts Institute of Technology: MIT OpenCourseWare under the Creative Commons BY-NC-SA license.
This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python programming language. (The course include a full set of video lectures).
Reading Material
1. How to Think Like a Computer Scientist: Learning with Python (1 MB pdf)Allen Downey, Jeffrey Elkner, Chris Meyers. How to Think Like a Computer Scientist: Learning with Python, Green Tea Press, 2008
Available for free download at the link above.
2. Python Programming
Online book on python programming available at Wikibooks.
3. The Python Tutorial
An online tutorial on Python.
4. Python Programming: An Introduction to Computer Scienc
Zelle, John. Python Programming: An Introduction to Computer Science. Wilsonville, OR: Franklin, Beedle & Associates, 2003. ISBN: 9781887902991.
(Click the button below to see a preview of the book)