CITS2200 Data Structures and Algorithms
- 6 points
Availability Location Mode Semester 1 UWA (Perth) Face to face Semester 1 UWA (Perth) Online-TT
- Details for undergraduate courses
- Level 2 core unit in the Computer Science; International Cybersecurity; Computing and Data Science; Automation and Robotics; Artificial Intelligence major sequences
- Level 2 core unit in the Software Engineering specialisation in the Engineering Science major sequence
- The area of knowledge for this unit is Mathematical and Physical Sciences
- Category B broadening unit for students
- Level 2 elective
- 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.
- 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.
- Indicative assessments in this unit are as follows: (1) mid-semester test; (2) laboratories and project; and (3) final examination. Further information is available in the unit outline.
Supplementary assessment is not available in this unit except in the case of a bachelor's pass degree student who has obtained a mark of 45 to 49 overall and is currently enrolled in this unit, and it is the only remaining unit that the student must pass in order to complete their course.
- Unit Coordinator(s)
- Professor Amitava Datta
- Unit rules
- Contact hours
- 61 (lectures: 26 hours; practical classes: 11 hours; labs: 24 hours)
- Unit Outline
- Semester 1-2020 [SEM-1-2020]
Weiss, M. A. Data Structures and Problem Solving Using Java, 4th edn: Addison-Wesley 2010
Cormen, T. H. et al. Introduction to Algorithms, 3rd edn: MIT Press 2009
- The availability of units in Semester 1, 2, etc. was correct at the time of publication but may be subject to change.
- All students are responsible for identifying when they need assistance to improve their academic learning, research, English language and numeracy skills; seeking out the services and resources available to help them; and applying what they learn. Students are encouraged to register for free online support through GETSmart; to help themselves to the extensive range of resources on UWA's STUDYSmarter website; and to participate in WRITESmart and (ma+hs)Smart drop-ins and workshops.
- Unit readings, including any essential textbooks, are listed in the unit outline for each unit one week prior the commencement of study. The unit outline will be available via the LMS and the UWA Handbook. Reading lists and essential textbooks are subject to change each semester. Essential textbooks can be purchased from the commercial vendors to secure the best deal. The Student Guild can provide assistance on where to purchase books if required. Books can be purchased second hand at the Guild Secondhand bookshop (second floor, Guild Village), which is located on campus. Copies of textbooks and other readings will be made available for students to access from the Library, online wherever possible as well as in print.
- If this unit is offered as on-campus face-to-face study only, students who are presently unable to enter Western Australia and whose studies would be delayed by an inability to complete this unit, should contact the unit coordinator (details given on this page) to ascertain, on an individual case-by-case basis, if alternate arrangements can be made to support their study in this unit.