This unit extends the first year treatment in KIT107 of standard data structures and algorithms for solving computational problems. Topics include: data structures (such as balanced trees and hash tables) for collections, (binary heaps for) priority queues, sorting algorithms (e.g. heapsort, mergesort and quicksort), graphs and graph algorithms (e.g. for searching, topological sorting, critical path analysis, shortest paths, minimum spanning trees, network flow), pattern finding (for substrings and regular expressions), algorithmic problem solving and algorithm design techniques (e.g. greed, divide and conquer, dynamic programming, backtracking).
|Unit name||Data Structures and Algorithms|
|College/School||College of Sciences and Engineering
School of Information and Communication Technology
|Discipline||Information & Communication Technology|
|Coordinator||Doctor Robert Ollington|
|Available as student elective?||Yes|
|Delivered By||University of Tasmania|
|Location||Study period||Attendance options||Available to|
- International students
- Domestic students
Please check that your computer meets the minimum System Requirements if you are attending via Distance/Off-Campus.
Units are offered in attending mode unless otherwise indicated (that is attendance is required at the campus identified). A unit identified as offered by distance, that is there is no requirement for attendance, is identified with a nominal enrolment campus. A unit offered to both attending students and by distance from the same campus is identified as having both modes of study.
|Study Period||Start date||Census date||WW date||End date|
* The Final WW Date is the final date from which you can withdraw from the unit without academic penalty, however you will still incur a financial liability (refer to How do I withdraw from a unit? for more information).
Unit census dates currently displaying for 2022 are indicative and subject to change. Finalised census dates for 2022 will be available from the 1st October 2021. Note census date cutoff is 11.59pm AEST (AEDT during October to March).
- transform a real-world problem into a simple abstract form that is suitable for efficient computation
- implement common data structures and algorithms using a common programming language
- analyse the theoretical and practical run time and space complexity of computer code in order to select algorithms for specific tasks
- apply common algorithm design strategies to develop new algorithms when there are no pre-existing solutions
|Field of Education||Commencing Student Contribution 1||Grandfathered Student Contribution 1||Approved Pathway Course Student Contribution 2||Domestic Full Fee|
1 Please refer to more information on student contribution amounts.
2 Please refer to more information on eligibility and Approved Pathway courses.
3 Please refer to more information on eligibility for HECS-HELP.
4 Please refer to more information on eligibility for FEE-HELP.
Please note: international students should refer to What is an indicative Fee? to get an indicative course cost.
Lectures: ~2 hr/wk online
|Assessment||Quizzes (x10) (20%)|Lab Work (20%)|Assignment - Data Storage Application (20%)|Assignment - Graph-based Computing Problem (40%)|
|Timetable||View the lecture timetable | View the full unit timetable|
|Links||Booktopia textbook finder|
The University reserves the right to amend or remove courses and unit availabilities, as appropriate.