The formal prerequisites for this course are CS2253 and ( MATH1503 or MATH2213). In case you got credit for courses other places, here is a list of the topics you will need. Anything on this list is fair game for assignments and tests, starting from the second day of the course.
Elementary geometry and algebra
The following topics of elementary mathematics should have been covered before university.
- Cartesian coordinates in 2D and 3D
- Trigonometry
- Pythogorean theorem
- Quadratic formula
Linear Algebra
We will be using the following basic concepts from linear algebra. At UNB these are covered in MATH1503 and MATH2213
- Matrices and vectors
- Vector arithmetic: addition, scalar multiplication
- Matrix multiplication
- Determinants
- Matrix transpose
- Matrix inverse
- Systems of linear equations
Procedural Programming
The following topics are covered at UNB in CS1083
- control flow
- recursion
basic data structures
- stacks
- queues
- search trees
- linked lists
The following are covered at UNB in CS2253
Machine representation of numbers
- integers
- floating point
Memory models and pointers
- arrays
- pointer arithmetic
- pointers to data and functions