CSCI 103 Spring 2020 Introduction to Programming

CSCI 103 Spring 2020: Introduction to Programming

Lecture Notes / Schedule

Below is the tentative schedule of lectures for the course. The schedule is subject to change as we adjust our pace in response to questions, examples and other feedback.

Week Lecture 1 Lecture 2 Slides Reading
1 Overview, course introduction Data Representation, C++ Syntax (statements, variables, expressions), Basic I/O [Unit 0: Goodney]

[Unit 1: Goodney]

 Chapter 1. Chapter 2: 2.1-2.4
2 Data Representation, C++ Syntax (statements, variables, expressions), Basic I/O Control Structures  [Unit 2: Goodney]  Chapter 3
3 Control Structures Functions, Parameter Passing Sematics (pass-by-value), the stack  [Unit 4: Goodney] Chapter 4
Chapter 5.1-5.9
4 Arrays C-strings, Passing Arrays to functions  [Unit 5: Goodney] Chapter 6.1-6.6
5 Multidimensional arrays, images Multidimensional arrays, images; Intro Pointers
6 Pointers; Pass-by-reference Pass-by-reference  [Unit 6: Goodney]  Chapter 7.1-7.6
7 Dynamic Memory Midterm Review
8 More dynamic allocation; Redirection and File I/O Introduction to objects, C++ strings  [Unit 7: Goodney]  Chapter 7.7-7.8, 8.1-8.5
9 Structs and Classes Algorithm and Time Complexity [Unit 8b: Goodney] 
[Unit 9: Goodney]
[Unit 10: Goodney]
 Chapter 9.1-9.11
10 Linked Lists STL Lists (Vectors and Deques)  [Unit 11: Goodney]
[Unit 12: Goodney]
11 Stringstreams & C++ References Programmimg Midterm Practice  [Unit 13: Goodney]
[Unit 14: Goodney]
12 More streams; PA5 discussion Doubly-linked lists  [Unit 15: doubly-linked lists]
13 Recursion Recursion  [Unit 8: Recursion]
14 Recursion on data structures (linked-lists) More on Recursion: generating all combinations [Unit 16: RecursionCombos]

[Unit 16: RecursionCombos-alt]

15 Schedule Slip, PA6 help Final review  [Review: Goodney]