| Course Information | Syllabus | Lectures | Assignments | Exams |
| Tutorial 08 - March 20 |
Binary Trees
Notes: [cmpt125-lab08.zip]
|
|
| Week 10 - March 18-20 |
Introduction to Graphs
Introduction to Trees
Binary Trees
Tree traversals
Breadth First Search
Practice Problems
Slides: [cmpt125-week10.zip]
|
|
| Lab Exam - March 13 |
||
| Week 09 - March 11-13 |
Introduction to data structures
Linked List
- Variants: Doubly Linked List
- Implementing stack/queue using a linked list
Comments on recursion
Slides: [cmpt125-week09.zip]
|
|
| Tutorial 07 - March 06 |
A data structure representing python-style list
Notes: [cmpt125-lab07.zip]
|
|
| Midterm Exam - March 06 |
||
| Week 08 - March 04 |
Introduction to data structures
Stack
Queue
- Implementation stack/queue using an array
Linked List
- Implementing stack/queue using a linked list
- Variants: Doubly Linked List
Slides: [cmpt125-week08.zip]
|
|
| Tutorial 06 - February 27 |
Sorting algorithms
Measuring performance of a program
Notes: [cmpt125-lab06.zip]
|
|
| Week 07 - February 25-27 |
Quick sort
More on Big-O notation
Slides: [cmpt125-week07.zip]
|
|
| February 16-22 - Reading Break | ||
| Tutorial 05 - February 13 |
Dynamic memory allocation
Measuring performance of a program
Notes: [cmpt125-lab05.zip]
|
|
| Week 06 - February 11-13 |
Big-O notation
Search algorithms
Sorting algorithms
- Selection sort
- Insertion sort
- Merge sort
qsort()
void*
Slides: [cmpt125-week06.zip]
|
|
| Tutorial 04 - February 06 |
Binary representation of integers and floats
Notes: [cmpt125-lab04.zip]
|
|
| Week 05 - February 04-06 |
More random topics:
- Quine program
- ANSI escape codes
Pseudo-code
Recursion:
- Fibonacci sequence
- Binary search
- Merge sort
- Flood fill algorithm
Measuring performance of algorithms
Big-O notation
Slides: [cmpt125-week05.zip]
|
|
| Tutorial 03 - January 30 |
file I/O
Notes: [cmpt125-lab03.zip]
|
|
| Week 04 - January 28-30 |
Type casting
enum/typedef/struct
Returning structs
2-d arrays
Pointers to functions
More random topics:
- Quine program
Slides: [cmpt125-week04.zip]
|
|
| Tutorial 02 - January 23 |
Passing arguments to main()
Redirecting stdin and stdout
Reading letters from input and calculating the frequencies
Notes: [cmpt125-lab02.zip]
|
|
| Week 03 - January 21-23 |
Strings
Initializing arrays and strings
scanf()
Memory allocation
Execution stack
Return values and conditions
Global variables
Static variables
Macros
Slides: [cmpt125-week03.zip]
|
|
| Tutorial 01 - January 16 |
Basic commands in Linux
Configuring Visual Studio Code
Writing hello_world.c
Running/Debugging using VScode
Compile in terminal using gcc
Notes: [cmpt125-lab01.zip]
|
|
| Week 02 - January 14-16 |
Arrays
Constant variables
Strings
Slides: [cmpt125-week02.zip]
|
|
| Week 01 - January 7-9 |
Introduction to C
Variables and strong typing
Data vs address
Pointers and references
Arrays
Slides: [cmpt125-week01.zip]
|
|