COMP3600 - Algorithms

COMP3600 - Algorithms

Course Information

Programs and Courses

Public course web site


Engineers Australia Stage 1 Competency Summary

1. Knowledge and Skill base

1.1 Comprehensive, theory based understanding of the underpinning natural and physical sciences and the engineering fundamentals applicable to the engineering discipline. tick
1.2 Conceptual understanding of the mathematics, numerical analysis, statistics, and computer and information sciences which underpin the engineering discipline. tick
1.3 In-depth understanding of specialist bodies of knowledge within the engineering discipline. tick
1.4 Discernment of knowledge development and research directions within the engineering discipline. tick
1.5 Knowledge of engineering design practice and contextual factors impacting the engineering discipline. tick
1.6 Understanding of the scope, principles, norms, accountabilities and bounds of sustainable engineering practice in the specific discipline.

2. Engineering Application Ability

2.1 Application of established engineering methods to complex engineering problem solving. tick
2.2 Fluent application of engineering techniques, tools and resources. tick
2.3 Application of systematic engineering synthesis and design processes.
2.4 Application of systematic approaches to the conduct and management of engineering projects. tick

3. Professional and Personal Attributes

3.1 Ethical conduct and professional accountability.
3.2 Effective oral and written communication in professional and lay domains. tick
3.3 Creative, innovative and pro-active demeanour.
3.4 Professional use and management of information. tick
3.5 Orderly management of self, and professional conduct.
3.6 Effective team membership and team leadership.

Learning Outcomes to EA Stage 1 Competency Mapping

1. Knowledge and Skill base 2. Engineering Application Ability 3. Professional and Personal Attributes

1.1

1.2

1.3

1.4

1.5

1.6

2.1

2.2

2.3

2.4

3.1

3.2

3.3

3.4

3.5

3.6

1Have a thorough understanding of a variety of algorithms, including linear selection, minimum spanning trees, single source shortest path, Huffman coding, etc, with real-life applications and the resource requirements tick tick tick tick tick tick tick tick
2Be able to apply the algorithmic techniques including dynamimc programming, greedy policy, and divide-and-conquer, to solve some practical problems. tick tick tick tick tick
3Be able to analyze time and space complexities of algorithms tick tick tick
4Have some experience in the design and implementation of algorithms for practical problems, using languages like C, C++ tick tick tick
5Have a thorough understanding of a variety of data structures used in algorithms, such as hash tables, heaps, binary search trees, red black trees, and disjoint sets. tick tick

ACS Software Engineering Area Summary

1Supporting knowledge of computer science including data structures and algorithms, programming, computer architecture, operating systems, file and database systems, data communications and networks tick
2Fundamental mathematical, abstraction and modelling skills tick
3Requirements elicitation and analysis tick
4Software design and architecture
5Software risk analysis
6Software implementation tick
7Software testing, verification, validation and quality assurance tick
8Software traceability and maintenance
9Configuration management
10Software engineering tools and metrics
11Software engineering process
12Software project management
13Distributed systems
14Basics of systems engineering
15Software engineering standards
16Mobile applications

Learning Outcomes to ACS Software Engineering Area Mapping

ACS Software Engineering Areas

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

1Have a thorough understanding of a variety of algorithms, including linear selection, minimum spanning trees, single source shortest path, Huffman coding, etc, with real-life applications and the resource requirements tick tick tick tick
2Be able to apply the algorithmic techniques including dynamimc programming, greedy policy, and divide-and-conquer, to solve some practical problems. tick tick
3Be able to analyze time and space complexities of algorithms tick tick
4Have some experience in the design and implementation of algorithms for practical problems, using languages like C, C++ tick tick
5Have a thorough understanding of a variety of data structures used in algorithms, such as hash tables, heaps, binary search trees, red black trees, and disjoint sets. tick tick

Assessment Tasks

1

Quiz 1

2

Quiz 2

3

Quiz 3

4

Quiz 4

5

Assignment 1

6

Assignment 2

7

Mid-semester exam

8

Final exam

Learning Outcomes to Assessment Task Mapping

Assessment Tasks

1

2

3

4

5

6

7

8

1Have a thorough understanding of a variety of algorithms, including linear selection, minimum spanning trees, single source shortest path, Huffman coding, etc, with real-life applications and the resource requirements tick tick tick tick tick tick tick
2Be able to apply the algorithmic techniques including dynamimc programming, greedy policy, and divide-and-conquer, to solve some practical problems. tick tick tick tick tick tick tick
3Be able to analyze time and space complexities of algorithms tick tick tick tick
4Have some experience in the design and implementation of algorithms for practical problems, using languages like C, C++ tick
5Have a thorough understanding of a variety of data structures used in algorithms, such as hash tables, heaps, binary search trees, red black trees, and disjoint sets. tick tick tick

Updated:  28 Jul 2017/ Responsible Officer:  Head of School/ Page Contact:  Lecturer Name