It's UWAweek 47

unitinfo

This page provides helpful information about many coursework units offered by Computer Science and Software Engineering in 2023.

The information here is not official - for official information please see the current UWA Handbook. Instead, it will help students to prepare for their future units, before the beginning of each semester, and before they have access to UWA's Learning Management System (LMS).

About the unit CITS2200 Data Structures and Algorithms (1st semester 2023)

Unit description:

At the core of most computer applications is the storage and retrieval of information. The way that the stored data is structured has a strong impact on what can be retrieved, how quickly it can be retrieved and how much space it occupies. The use of generic structures, or abstract data types (ADTs), to encapsulate the data also facilitates software engineering principles of independent modification, extension and re-use. This unit studies the specification, implementation and time-and-space performance of a range of commonly used ADTs and corresponding algorithms in an object-oriented setting.

Unit outcomes:

Students are able to (1) undertake problem identification via abstraction; (2) describe common and important data structures and algorithms in the computing discipline; (3) implement a range of data structures and information literacy algorithms in a high-level programming language; (4) apply existing data structures and algorithms from pre-built software libraries; (5) design data structures and algorithms; and (6) critically assess the performance of different data structures and algorithms.

Unit coordinator:

Prof. Amitava Datta
[email protected]

Unit homepage:

Unit is offered in these majors and courses:

Indicative weekly topics:

week 1 Introduction to Algorithms, Introduction to Data Structures
week 2 Data abstraction, queues
week 3 Lists, complexity
week 4 Asymptotic analysis,, amortized analysis
week 5 Iterators, trees
week 6 Tree representation, tree traversal
week 7 Priority queues, minimum spanning trees
week 8 Shortest path algorithms
week 9 All-pairs shortest path algorithms and dynamic programming
week 10 Maps, sets and tables
week 11 Search trees hashmaps
week 12 Revision and past exam paper reviews

Indicative assessment:

Eight weekly labs, a project and a final examination

Useful prior experience and background knowledge:

Proficiency in basic Java programming, good understanding of objects and references

Useful prior programming and software experience:

Java Runtime Environment

Hardware required for this unit:

Students are able to undertake their laboratory exercises and projects in laboratories in the CSSE building, but most students also complete work on their own laptops.
The following hardware is required to successfully complete this unit:


Standard laptop

Software required for this unit:

Students are able to undertake their laboratory exercises and projects in laboratories in the CSSE building, but most students also complete work on their own laptops.
The following software is required to successfully complete this unit:


Java runtime environment on any platform

Operating system(s) used in this unit:

Different units will use different operating systems for their teaching - for in-class examples, laboratory exercises, and programming projects.
If an operating system is REQUIRED, it will be used when marking assessments.


ANY reasonable platform




This information last updated 6:40pm Thu 20th Apr 2023

The University of Western Australia

Computer Science and Software Engineering

CRICOS Code: 00126G
Written by [email protected]
Powered by history
Feedback always welcome - it makes our software better!
Last modified  8:32AM Jul 16 2023
Privacy policy