Introduction to Computer Science and Programming (Fall 2008)

Video Lectures

Displaying all 24 video lectures.
Lecture 1
Goals, Introduction to the Course
Play Video
Goals, Introduction to the Course

Lecture 1: Goals of the course; what is computation; introduction to data types, operators, and variables

 
Lecture 2
Operators, operands, statements, branching, iteration
Play Video
Operators, operands, statements, branching, iteration

Lecture 2: Operators and operands; statements; branching, conditionals, and iteration
Lecture 3
Common code patterns: iterative programs
Play Video
Common code patterns: iterative programs

Lecture 3: Common code patterns: iterative programs

 
Lecture 4
Decomposition, abstraction through functions and recursion
Play Video
Decomposition, abstraction through functions and recursion

Lecture 4: Decomposition and abstraction through functions; introduction to recursion
Lecture 5
Floating point numbers, finding roots
Play Video
Floating point numbers, finding roots

Lecture 5: Floating point numbers, successive refinement, finding roots
Lecture 6
Bisection methods, Newton/Raphson, introduction to lists
Play Video
Bisection methods, Newton/Raphson, introduction to lists

Lecture 6: Bisection methods, Newton/Raphson, introduction to lists
Lecture 7
Lists, mutability, dictionaries, pseudocode and efficiency
Play Video
Lists, mutability, dictionaries, pseudocode and efficiency

Lecture 7: Lists and mutability, dictionaries, pseudocode, introduction to efficiency
Lecture 8
Complexity; log, linear, quadratic, exponential algorithms
Play Video
Complexity; log, linear, quadratic, exponential algorithms

Lecture 8: Complexity; log, linear, quadratic, exponential algorithms
Lecture 9
Binary search, bubble and selection sorts
Play Video
Binary search, bubble and selection sorts

Lecture 9: Binary search, bubble and selection sorts
Lecture 10
Divide and conquer methods, merge sort, exceptions
Play Video
Divide and conquer methods, merge sort, exceptions

Lecture 10: Divide and conquer methods, merge sort, exceptions
Lecture 11
Testing and debugging
Play Video
Testing and debugging

Lecture 11: Testing and debugging
Lecture 12
Debugging, knapsack problem, dynamic programming
Play Video
Debugging, knapsack problem, dynamic programming

Lecture 12: More about debugging, knapsack problem, introduction to dynamic programming
Lecture 13
Dynamic programming: overlapping subproblems, optimal substructure
Play Video
Dynamic programming: overlapping subproblems, optimal substructure

Lecture 13: Dynamic programming: overlapping subproblems, optimal substructure
Lecture 14
Knapsack problem and object-oriented programming
Play Video
Knapsack problem and object-oriented programming

Lecture 14: Analysis of knapsack problem, introduction to object-oriented programming
Lecture 15
Abstract data types, classes and methods
Play Video
Abstract data types, classes and methods

Lecture 15: Abstract data types, classes and methods
Lecture 16
Encapsulation, inheritance, shadowing
Play Video
Encapsulation, inheritance, shadowing

Lecture 16: Encapsulation, inheritance, shadowing
Lecture 17
Computational models: random walk simulation
Play Video
Computational models: random walk simulation

Lecture 17: Computational models: random walk simulation
Lecture 18
Presenting simulation results, Pylab, plotting
Play Video
Presenting simulation results, Pylab, plotting

Lecture 18: Presenting simulation results, Pylab, plotting
Lecture 19
Biased random walks, distributions
Play Video
Biased random walks, distributions

Lecture 19: Biased random walks, distributions
Lecture 20
Monte Carlo simulations, estimating pi
Play Video
Monte Carlo simulations, estimating pi

Lecture 20: Monte Carlo simulations, estimating pi
Lecture 21
Simulation results, curve fitting, linear regression
Play Video
Simulation results, curve fitting, linear regression

Lecture 21: Validating simulation results, curve fitting, linear regression
Lecture 22
Normal, uniform, and exponential distributions
Play Video
Normal, uniform, and exponential distributions

Lecture 22: Normal, uniform, and exponential distributions; misuse of statistics
Lecture 23
Stock market simulation
Play Video
Stock market simulation

Lecture 23: Stock market simulation
Lecture 24
Course overview; what do computer scientists do?
Play Video
Course overview; what do computer scientists do?

Lecture 24: Course overview; what do computer scientists do?