Algorithms and Complexity
Subject COMP90038 (2014)
Note: This is an archived Handbook entry from 2014.
Credit Points: | 12.50 |
---|---|
Level: | 9 (Graduate/Postgraduate) |
Dates & Locations: | This subject is not offered in 2014. |
Time Commitment: | Contact Hours: 36 hours, comprising of three hours of lectures per week Total Time Commitment: 200 hours |
Prerequisites: | An undergraduate degree in a cognate discipline. |
Corequisites: | None |
Recommended Background Knowledge: | Basic proficiency in mathematics and computing. |
Non Allowed Subjects: | Subject
|
Core Participation Requirements: |
|
Contact
email: harald@unimelb.edu.au
Subject Overview: |
AIMS The aim of this subject is for students to develop familiarity and competence in assessing and designing computer programs for computational efficiency. Although computers manipulate data very quickly, to solve large-scale problems, we must design strategies so that the calculations combine effectively. Over the latter half of the 20 th century, an elegant theory of computational efficiency developed. This subject introduces students to the fundamentals of this theory and to many of the classical algorithms and data structures that solve key computational questions. These questions include distance computations in networks, searching items in large collections, and sorting them in order.
INDICATIVE CONTENT Topics covered include complexity classes and asymptotic notation; empirical analysis of algorithms; abstract data types including queues, trees, priority queues and graphs; algorithmic techniques including brute force, divide-and-conquer, dynamic programming and greedy approaches; space and time trade-offs; and the theoretical limits of algorithm power. |
---|---|
Learning Outcomes: |
INTENDED LEARNING OUTCOMES (ILO) On completion of this subject the student is expected to:
|
Assessment: |
Hurdle requirement: To pass the subject, students must obtain at least:
All Intended Learning Outcomes (ILOs) are addressed in all assessment components |
Prescribed Texts: | None |
Breadth Options: | This subject is not available as a breadth subject. |
Fees Information: | Subject EFTSL, Level, Discipline & Census Date |
Generic Skills: |
On completion of this subject students should have the following skills:
|
Notes: |
LEARNING AND TEACHING METHODS The subject involves weekly three-hour lectures. The lectures are a mix of direct delivery and interactive student problem solving. Although written assignments are submitted by students individually, in-plenum discussion of the problems is allowed, and encouraged.
INDICATIVE KEY LEARNING RESOURCES Students are provided with lecture slides, and links on the LMS to the in-house animated software Algorithms in Action. The slides are integrated with the well-established textbook.
CAREERS / INDUSTRY LINKS With Big Data at the forefront of modern computing solutions, industry is ever-more focused on efficient computational analysis methods. Software engineers, developers and data analysts will find not only the analysis techniques, but also the fundamental algorithmic design concepts, highly applicable to the handling of significant datasets. Building on an initial connection in a similar undergraduate offering, there is scope for industry liaison with this subject. |
Related Course(s): |
Master of Engineering in Distributed Computing Master of Information Technology Master of Information Technology Master of Information Technology Master of Operations Research and Management Science Master of Philosophy - Engineering Master of Science (Bioinformatics) Ph.D.- Engineering |
Related Majors/Minors/Specialisations: |
Master of Engineering (Mechatronics) Master of Engineering (Software with Business) Master of Engineering (Software) |
Download PDF version.