COMP261 (2024) - Algorithms and Data Structures

Prescription

This course covers a range of algorithms and data structures building on the fundamental structures and algorithms from COMP 103. The major areas covered are: graph algorithms, graphics algorithms and advanced data structures. This course takes a practical approach focusing on the implementation of a wide variety of algorithms.

Course learning objectives

Students who pass this course should be able to:

  1. Select, adapt, and implement a wide range of standard algorithms and data structures to construct software solutions to complex problems (BE 3(a), 3(d), 3(f), BSc 1, 2).
  2. Understand algorithms described in pseudocode and to use analysis of an algorithm's time and space requirements to determine applicability to a problem (BE 3(a), 3(b), BSc 3).
  3. Recognise the distinction between "easy" problems, 'hard' (NP) problems, and uncomputable problems and the consequences for constructing algorithms and programs for such problems (BE 3(b), BSc 3,4).
  4. Know and be able to implement important algorithms related to graphs, searching, and parsing (BE 3(a), BSc 2).

Course content

We’ve designed this course for in-person study, and to get the most of out it we strongly recommend you attend lectures on campus. Most assessment items, as well as tutorials/seminars/labs/workshops will only be available in person. Any exceptions for in-person attendance for assessment will be looked at on a case-by-case basis in exceptional circumstances, e.g., through disability services or by approval by the course coordinator.

Withdrawal from Course

Withdrawal dates and process:
https://www.wgtn.ac.nz/students/study/course-additions-withdrawals

Lecturers

Dr Xiaoying Gao (Coordinator)

Dr Fanglue Zhang

Dr Jyoti Sahni

Teaching Format

The lectures will be offered in-person and will be recorded and made available online. 
 
During the trimester there will be up to three lectures and a tutorial for you to sign up and attend during the week.

Dates (trimester, teaching & break dates)

  • Teaching: 26 February 2024 - 31 May 2024
  • Break: 01 April 2024 - 14 April 2024
  • Study period: 03 June 2024 - 06 June 2024
  • Exam period: 07 June 2024 - 22 June 2024

Class Times and Room Numbers

26 February 2024 - 31 March 2024

  • Monday 13:10 - 14:00 – LT205, Hugh Mackenzie, Kelburn
  • Tuesday 13:10 - 14:00 – LT205, Hugh Mackenzie, Kelburn
  • Thursday 13:10 - 14:00 – LT205, Hugh Mackenzie, Kelburn
15 April 2024 - 21 April 2024

  • Thursday 13:10 - 14:00 – LT205, Hugh Mackenzie, Kelburn
15 April 2024 - 02 June 2024

  • Monday 13:10 - 14:00 – LT205, Hugh Mackenzie, Kelburn
  • Tuesday 13:10 - 14:00 – LT205, Hugh Mackenzie, Kelburn
29 April 2024 - 02 June 2024

  • Thursday 13:10 - 14:00 – LT205, Hugh Mackenzie, Kelburn

Other Classes

There are tutorials as shown in the Timetable page of the course home page hosted by ECS. You must sign up for one tutorial using MyAllocator.

Required

There are no required texts for this offering.

Mandatory Course Requirements

There are no mandatory course requirements for this course.

If you believe that exceptional circumstances may prevent you from meeting the mandatory course requirements, contact the Course Coordinator for advice as soon as possible.

Assessment

There will be four tests that will take place in the lectures and four assignments.
 
 

Assessment ItemDue Date or Test DateCLO(s)Percentage
Test 1Week 3CLO: 1,2,3,415%
Assignment 1Week 4CLO: 1,2,3,410%
Test 2Week 6CLO: 1,2,3,415%
Assignment 2Week 7CLO: 1,2,3,410%
Test 3Week 9CLO: 1,2,3,415%
Assignment 3Week 10CLO: 1,2,3,410%
Test 4Week 12CLO: 1,2,3,415%
Assignment 4Assessment periodCLO: 1,2,3,410%

Penalties

Policy for Late Submissions:
 
Each student will have 3 "late days" which you may choose to use for any assignment or assignments during the course. There will be no penalty applied for these late days. You do not need to apply for these - any late days you have left will be automatically applied to assignments that you submit late.
 
The submission system will give you 72 hours worth of "seconds" to use throughout the four assignments, and it will be automatically calculated and reported to you by the ECS Student Marks system.
 
If you have negotiated an extension with the Course Coordinator on the basis of special circumstances that go beyond what the "late days" are intended to cover, then there will be no penalty and no use of late days as long as you meet the negotiated deadline.
 
If you do not have an extension, then after the 3 late days have used up, any assignment submitted up to 24 hours after the deadline will be capped at a C+ (64%), and any assignment submitted more than 24 hours after the deadline will not be marked and will get 0 marks.

Extensions

Individual extensions will only be granted in exceptional personal circumstances, and should be negotiated with the course coordinator before the deadline whenever possible. Documentation (eg, medical certificate) may be requested.

Submission & Return

The assignments will be marked in person: you will need to demonstrate your program and to talk about key details of your program with a marker. We will be using some of the tutorial times for marking. Please check the course web page for more information.
 
If you do not get your assignment marked in the marking slots assigned for that assignment, you will automatically get 10% penalty and if the assignment is not marked by the end of the course, you will get 0% for that assignment. If you have any special circumstances you need to contact the course coordinator a.s.a.p. to see if alternative arrangements can be made if appropriate.
 
The policy on late submission is as follows:

  • Each assignment will be marked out of 100.
  • Each assignment that is late (ie, submitted on the submission system after the deadline) will be penalised by 20 marks if it is up to 24 hours late, and penalised by 40 marks if it is between 24 hours and 48 hours late. Any work submitted more than 48 hours after the deadline will receive 0 marks.
  • Each student will have 3 "late days" which you may choose to use for any assignment or assignments during the course. There will be no penalty applied for these late days. You do not need to apply for these - any late days you have left will be automatically applied to assignments that you submit late.
  • The late days are intended to cover minor illnesses or other personal reasons for being late. You should only ask for extensions in the case of more significant or longer lasting problems (and you may need documentation). Do not waste "late days" on procrastination!

Workload

In order to maintain satisfactory progress in COMP 261, you should plan to spend an average of 10 hours per week on this paper. A plausible and approximate breakdown for these hours would be:

  • Lectures and tutorials: 4 hours,
  • Review and readings: 1 hour,
  • Assignments: 5 hours.

Teaching Plan

See https://ecs.wgtn.ac.nz/Courses/COMP261_2024T1/LectureSchedule

Communication of Additional Information

The main means of communication outside of lectures will be the COMP 261 web page at https://ecs.wgtn.ac.nz/Courses/COMP261_2024T1/. There you will find, among other things, this document, the lecture schedule and assignment handouts, timetable for the lectures/tutorials/helpdesks, and the COMP 261 Forum. The forum is a web-based bulletin board system. Questions and comments can be posted to the forum, and staff will read these posts and frequently respond to them.

Offering CRN: 18314

Points: 15
Prerequisites: COMP 103, ENGR 123 or MATH 161
Restrictions: INFO 205
Duration: 26 February 2024 - 23 June 2024
Starts: Trimester 1
Campus: Kelburn