1/10/2016

Python book by Guttag

John V. GuttagIntroduction to Computation and Programming Using Python, Revised and Expanded Edition, MIT Press, 2013.

假設沒有學過任何程式語言下,透過 Python,深入淺出地說明如何利用計算的 (computational) 概念去解題。在短短的 286 頁 (A4 大小),舉了許多的例子說明程式的應用。以下是作者在 MIT 開課的一學期課綱 (一學期 15 週,上課 24 小時,每週一小時的習題課 (Recitation))

  1. Goals of the course; what is computation; introduction to data types, operators, and variables
  2. Operators and operands; statements; branching, conditionals, and iteration
  3. Common code patterns: iterative programs
  4. Decomposition and abstraction through functions; introduction to recursion
  5. Floating point numbers, successive refinement, finding roots  
  6. Bisection methods, Newton/Raphson, introduction to lists
  7. Lists and mutability, dictionaries, pseudocode, introduction to efficiency  
  8. Complexity; log, linear, quadratic, exponential algorithms
  9. Binary search, bubble and selection sorts  
  10. Divide and conquer methods, merge sort, exceptions
  11. Testing and debugging  
  12. More about debugging, knapsack problem, introduction to dynamic programming
  13. Dynamic programming: overlapping subproblems, optimal substructure
  14. Analysis of knapsack problem, introduction to object-oriented programming  
  15. Abstract data types, classes and methods  
  16. Encapsulation, inheritance, shadowing
  17. Computational models: random walk simulation
  18. Presenting simulation results, Pylab, plotting
  19. Biased random walks, distributions  
  20. Monte Carlo simulations, estimating pi
  21. Validating simulation results, curve fitting, linear regression  
  22. Normal, uniform, and exponential distributions; misuse of statistics  
  23. Stock market simulation
  24. Course overview; what do computer scientists do

沒有留言:

張貼留言