Students

COMP2010 – Algorithms and Data Structures

2025 – Session 1, In person-scheduled-weekday, North Ryde

General Information

Download as PDF
Unit convenor and teaching staff Unit convenor and teaching staff Convener, Lecturer
Matthew Roberts
Lecturer
Mark Dras
Credit points Credit points
10
Prerequisites Prerequisites
COMP1010 and 10cp from (MATH1007-MATH1025 or STAT1250 or STAT1170 or STAT1371)
Corequisites Corequisites
Co-badged status Co-badged status
COMP6011
Unit description Unit description

This unit provides a study of algorithms, data structures and programming techniques. The topics covered include: trees; graphs and heaps; advanced sorting techniques; elements of storage management; and complexity. The presentation emphasises the role of data abstraction and correctness proofs.

Important Academic Dates

Information about important academic dates including deadlines for withdrawing from units are available at https://www.mq.edu.au/study/calendar-of-dates

Learning Outcomes

On successful completion of this unit, you will be able to:

  • ULO1: Demonstrate an understanding of a variety of algorithm design techniques and  how they can improve either efficiency or clarity.
  • ULO2: Apply strategies for achieving correctness in a range of algorithms.
  • ULO3: Apply commonly used data structures, including trees, graphs, lists and their variations.
  • ULO4: Carry-out advanced and broadly based problem solving, particularly when designing and writing programs to meet a given specification.
  • ULO5: Describe the results of analysing algorithms.

General Assessment Information

Latest release dates for each assessment are:

  • Mid-Sem Exam: Wed Week 10 during lecture
  • Final Exam: Exam Period
  • Weekly Tasks: Wed the week prior
  • Assignment one: Sunday Week 4
  • Assignment two: Sunday Week 9

Requirements to pass:

  • Achieve 50 or more aggregate marks during semester.

Late Assessment Submission Penalty

Unless a Special Consideration request has been submitted and approved, a 5% penalty (of the total possible mark of the task) will be applied for each day a written report or presentation assessment is not submitted, up until the 7th day (including weekends). After the 7th day, a grade of ‘0’ will be awarded even if the assessment is submitted. The submission time for all uploaded assessments is 11:55 pm. A 1-hour grace period will be provided to students who experience a technical concern. For any late submission of time-sensitive tasks, such as scheduled tests/exams, performance assessments/presentations, and/or scheduled practical assessments/labs, please apply for Special Consideration. For example, if the assignment is worth 8 marks (of the entire unit) and your submission is late by 19 hours (or 23 hours 59 minutes 59 seconds), 0.4 marks (5% of 8 marks) will be deducted. If your submission is late by 24 hours (or 47 hours 59 minutes 59 seconds), 0.8 marks (10% of 8 marks) will be deducted, and so on.

Missing Class

If you miss your class you will have missed your initial chance to submit your weekly work.  In this instance you should submit that work and in your next class.  If you need to miss more than one class in a row, please put in a special consideration request.

Special Consideration

The Special Consideration Policy aims to support students who have been impacted by short-term circumstances or events that are serious, unavoidable and significantly disruptive, and which may affect their performance in assessment. If you experience circumstances or events that affect your ability to complete the assessments in this unit on time, please inform the convenor and submit a Special Consideration request through ask.mq.edu.au.

Assessment Tasks

Name Weighting Hurdle Due
Final Exam 45% No Exam Period
Assignment Two 20% No 11:55pm Sunday Week 11
Weekly Exercises 10% No Weekly in workshop classes starting from week 2
Mid semester test 10% No Wed Week 10 during lecture
Assignment One 15% No 11:55pm Sunday Week 6

Final Exam

Assessment Type 1: Examination
Indicative Time on Task 2: 13 hours
Due: Exam Period
Weighting: 45%

 

A formal written examination based on lectures, class work, activities, and assignments.

 


On successful completion you will be able to:
  • Demonstrate an understanding of a variety of algorithm design techniques and  how they can improve either efficiency or clarity.
  • Apply strategies for achieving correctness in a range of algorithms.
  • Apply commonly used data structures, including trees, graphs, lists and their variations.
  • Carry-out advanced and broadly based problem solving, particularly when designing and writing programs to meet a given specification.
  • Describe the results of analysing algorithms.

Assignment Two

Assessment Type 1: Programming Task
Indicative Time on Task 2: 20 hours
Due: 11:55pm Sunday Week 11
Weighting: 20%

 

You will be asked to design and implement an algorithm in Java based on graph data structures using some of the more advanced techniques discussed in lectures.

 


On successful completion you will be able to:
  • Demonstrate an understanding of a variety of algorithm design techniques and  how they can improve either efficiency or clarity.
  • Apply strategies for achieving correctness in a range of algorithms.
  • Apply commonly used data structures, including trees, graphs, lists and their variations.

Weekly Exercises

Assessment Type 1: Programming Task
Indicative Time on Task 2: 12 hours
Due: Weekly in workshop classes starting from week 2
Weighting: 10%

 

Each week you will be asked to submit the solutions to problems based on lecture material.

 


On successful completion you will be able to:
  • Demonstrate an understanding of a variety of algorithm design techniques and  how they can improve either efficiency or clarity.
  • Apply strategies for achieving correctness in a range of algorithms.
  • Apply commonly used data structures, including trees, graphs, lists and their variations.
  • Carry-out advanced and broadly based problem solving, particularly when designing and writing programs to meet a given specification.

Mid semester test

Assessment Type 1: Quiz/Test
Indicative Time on Task 2: 10 hours
Due: Wed Week 10 during lecture
Weighting: 10%

 

Mid semester test based on practical questions in weeks 1--9. This will be delivered as an iLearn Quiz.

 


On successful completion you will be able to:
  • Demonstrate an understanding of a variety of algorithm design techniques and  how they can improve either efficiency or clarity.
  • Apply strategies for achieving correctness in a range of algorithms.
  • Apply commonly used data structures, including trees, graphs, lists and their variations.

Assignment One

Assessment Type 1: Programming Task
Indicative Time on Task 2: 10 hours
Due: 11:55pm Sunday Week 6
Weighting: 15%

 

In this assignment you will be asked to design and analyse an algorithm based on material studied in weeks 1--5. Your algorithm will be implemented in the Java programming language using some of the design techniques taught in lectures and the weekly exercises. The focus is on correctness and the ability to write programs on list or tree data structures.

 


On successful completion you will be able to:
  • Demonstrate an understanding of a variety of algorithm design techniques and  how they can improve either efficiency or clarity.
  • Apply strategies for achieving correctness in a range of algorithms.
  • Apply commonly used data structures, including trees, graphs, lists and their variations.

1 If you need help with your assignment, please contact:

  • the academic teaching staff in your unit for guidance in understanding or completing this type of assessment
  • the Writing Centre for academic skills support.

2 Indicative time-on-task is an estimate of the time required for completion of the assessment task and is subject to individual variation

Delivery and Resources

Week 1 classes

Lectures will take place in week 1.  Workshops will begin in week 2.

Methods of Communication

We will communicate with you via your university email and through announcements on iLearn. Queries to convenors can be placed on the iLearn discussion board.

Unit Schedule

  • Weeks 1-4: Recursive structures, algorithm design
  • Weeks 5-7: Trees
  • Week 8: Hash Tables
  • Weeks 9-11: Graphs
  • Week 12: Complexity

Policies and Procedures

Macquarie University policies and procedures are accessible from Policy Central (https://policies.mq.edu.au). Students should be aware of the following policies in particular with regard to Learning and Teaching:

Students seeking more policy resources can visit Student Policies (https://students.mq.edu.au/support/study/policies). It is your one-stop-shop for the key policies you need to know about throughout your undergraduate student journey.

To find other policies relating to Teaching and Learning, visit Policy Central (https://policies.mq.edu.au) and use the search tool.

Student Code of Conduct

Macquarie University students have a responsibility to be familiar with the Student Code of Conduct: https://students.mq.edu.au/admin/other-resources/student-conduct

Results

Results published on platform other than eStudent, (eg. iLearn, Coursera etc.) or released directly by your Unit Convenor, are not confirmed as they are subject to final approval by the University. Once approved, final results will be sent to your student email address and will be made available in eStudent. For more information visit connect.mq.edu.au or if you are a Global MBA student contact globalmba.support@mq.edu.au

Academic Integrity

At Macquarie, we believe academic integrity – honesty, respect, trust, responsibility, fairness and courage – is at the core of learning, teaching and research. We recognise that meeting the expectations required to complete your assessments can be challenging. So, we offer you a range of resources and services to help you reach your potential, including free online writing and maths support, academic skills development and wellbeing consultations.

Student Support

Macquarie University provides a range of support services for students. For details, visit http://students.mq.edu.au/support/

The Writing Centre

The Writing Centre provides resources to develop your English language proficiency, academic writing, and communication skills.

The Library provides online and face to face support to help you find and use relevant information resources. 

Student Services and Support

Macquarie University offers a range of Student Support Services including:

Student Enquiries

Got a question? Ask us via the Service Connect Portal, or contact Service Connect.

IT Help

For help with University computer systems and technology, visit http://www.mq.edu.au/about_us/offices_and_units/information_technology/help/

When using the University's IT, you must adhere to the Acceptable Use of IT Resources Policy. The policy applies to all who connect to the MQ network including students.

Changes from Previous Offering

We value student feedback to be able to continually improve the way we offer our units. As such we encourage students to provide constructive feedback via student surveys, to the teaching staff directly, or via the FSE Student Experience & Feedback link in the iLearn page.

Student feedback from the previous offering of this unit was very positive overall, with students pleased with the clarity around assessment requirements and the level of support from teaching staff. As such, no change to the delivery of the unit is planned, however we will continue to strive to improve the level of support and the level of student engagement.


Unit information based on version 2025.04 of the Handbook