Programming with C/C++ 2: Algorithms, Data Structures and Design Patterns
Syllabus, Bachelor's level, 5SD803
- Education cycle
- First cycle
- Main field(s) of study and in-depth level
- Computer Science G1N
- Grading system
- Fail (U), Pass (G), Pass with distinction (VG)
- Finalised by
- The Department Board, 10 February 2021
- Responsible department
- Department of Game Design
The course is part of the Bachelor's Programme in Game Design and Programming, 180 credits.
General entry requirements and Mathematics 3c or Mathematics D
Upon completing the course, students will be able to:
- explain time complexity (Big O),
- analyse performance in algorithms and data structures,
- use and implement basic algorithms and data structures,
- understand the consequences of the choice of algorithms and data structures, and will also
- know about frequently occurring design patterns in program construction.
The course covers the fundamentals of implementation and data structures such as linked lists, stacks, queues, hash tables and trees as well as sorting and search algorithms. The course also takes up frequently occurring design patterns, for example, flyweight, observer, permit, abstract factory or visitor.
Lectures, teacher-led exercises and laboratory work with compulsory hand-in assignments.
Examination is based on assignments handed in during the course.
If there are special reasons for doing so, an examiner may make an exception from the method of assessment indicated and allow a student to be assessed by another method. An example of special reasons might be a certificate regarding special pedagogical support from the University´s disability coordinator.
Uppsala University does not accept cheating or plagiarism. Suspected incidents of cheating or plagiarism are reported to the Vice-Chancellor, which may issue a formal warning to the student or suspend the student from studies for a certain period.
NB: Only a completed course may be counted towards a degree.