CMPT 125 - Introduction to Computing Science and Programming II - Fall 2021

Course Information Syllabus Lectures Assignments Exams


Lecture 23 - Decemeber 6
Review before final
Slides: [Lecture23.zip]
Lecture 22 - Decemeber 1
More on inheritance in C++
Slides: [Lecture22.zip]
Lecture 21 - November 29
Introduction to C++
- Passing arguments by reference
- Copy constructors
- Operators in C++
- Generic types
- C++ Standard Template Library (STL)
Singleton
Slides: [Lecture21.zip]
Tutorial 10 - November 24
C++
- Clases
- constructors/destructors
- new/delete
Notes: [lab10.zip]
Solution: [lab10-sol.zip]
Lecture 20 - November 24
Introduction to C++
- Object Oriented Programming
- Inheritance, virtual methods
- Passing arguments by reference
- Copy constructors
- Operators in C++
Singleton
Slides: [Lecture20.zip]
Lecture 19 - November 22
void*
Introduction to C++
- Clases
- constructors/destructors
- new/delete
Slides: [Lecture19.zip]
Lab Exam - November 17
Lab exam for 09:30-10:20 [lab-exam-0930.zip]
Lab exam for 10:30-11:20 [lab-exam-1030.zip]
Lab exam for 15:30-16:20 [lab-exam-1530.zip]
Lab exam for 16:30-17:20 [lab-exam-1630.zip]
No Lecture - November 17
Lecture 18 - November 15
Binary Search Trees
Slides: [Lecture18.zip]
Tutorial 9 - November 10
Binary Trees
Notes: [lab09.zip]
Solution: [lab09-sol.zip]
Lecture 17 - November 10
Breadth First Search
Binary Search Trees
Slides: [Lecture17.zip]
Lecture 16 - November 8
Introduction to Graphs
Introduction to Trees
Binary Trees
Tree Traversals
Slides: [Lecture16.zip]
Tutorial 8 - November 3
Linked Lists
Notes: [lab08.zip]
Solution: [lab08-sol.zip]
Lecture 15 - November 3
Comments on recursion
Slides: [Lecture15.zip]
Lecture 14 - November 1
Stack
Queue
Linked List
- Implementing a stack using linked list
- Implementing a queue using linked list
- Variants: Doubly Linked List
Remarks on recursion
Slides: [Lecture14.zip]
Tutorial 7 - October 27
A data structure of a python style list
Notes: [lab07.zip]
Lecture 13 - October 27
Introduction to data structures
- Stacks
Slides: [Lecture13.zip]
Midterm - October 25
Tutorial 6 - October 20
Sorting algorithms
Measuring performance of a sorting algorithms
Notes: [lab06.zip]
Lecture 12 - October 20
Sorting algorithms
Quick sort
qsort()
Slides: [Lecture12.zip]
Lecture 11 - October 18
More on Big-O notation
Search algorithms
Sorting algorithms
Slides: [Lecture11.zip]
Tutorial 5 - October 13
Dynamic memory allocation
Measuring performance of a program
Notes: [lab05.zip]
Lecture 10 - October 13
Big-O notation
Search algorithms
Slides: [Lecture10.zip]
Tutorial 4 - October 6
Binary representation on integers and floats
Bitwise operations on numbers
Notes: [lab04.zip]
Lecture 9 - October 6
Measuring performance of algorithms
Big-O notation
Some simple examples
Slides: [Lecture09.zip]
Lecture 8 - October 4
Quine program
Pseudo-code
Recursion
- Fibonacci sequence
- Merge sort
- Flood fill algorithm
Measuring performance of algorithms
Big-O notation
Slides: [Lecture08.zip]
Tutorial 3 - September 29
Passing arguments to main()
Redirecting stdin and stdout
reading from file
Notes: [lab03.pdf]
Lecture 7 - September 29
Execution stack
Returning structs
Pointers to functions
Slides: [Lecture07.zip]
Lecture 6 - September 27
Return values and conditions
Global variables
Static variables
Macros
Type casting
Memory allocation
Execution stack
Slides: [Lecture06.zip]
Tutorial 2 - September 22
Compiling and homework assignment
Makefile
using .h files
Some practice problems
Notes: [lab02.pdf]
Ex5: [ex5.zip]
Ex5 solution: [ex5_answer.zip]
Lecture 5 - September 22
enum/typedef/struct
Slides: [Lecture05.zip]
Lecture 4 - September 20
Strings
scanf()
2-d arrays
Slides: [Lecture04.zip]
Tutorial 1 - September 15
Basic commands in Linux
Configuring Visual Studio Code
Writing hello_world.c
Running/Debugging using Visual Studio Code
Compile in terminal using gcc
Notes: [lab01.pdf]
Lecture 3 - September 15
Arrays
Constant variables
Strings
Slides: [Lecture03.zip]
Lecture 2 - September 13
Data vs address
Pointers and references
Arrays
Slides: [Lecture02.zip]
Lecture 1 - September 8
Introduction to C
Variables and strong typing
Slides: [Lecture01.zip]