Code |
AC52002
|
Title
|
Advanced Programming Techniques
|
School
|
Computing
|
Credit rating
| Level |
5 (MSc)
| Volume |
20 credits
|
Aims
|
The course aims to cover more advanced techniques than those covered in the Software Development module AC51002. In particular it covers important data structures and algorithms, and their implementation in C++, which involves using the more advances features of the programming language itself.
|
Intended learning outcomes
| KNOWLEDGE -
abstract data types
-
pointers and dynamic data structures
-
commonly used data structures
-
important algorithms
SKILLS -
object and class design
-
use of data structures
-
advanced coding
-
debugging
-
testing
UNDERSTANDING -
of object-oriented programming and data abstraction
-
of a number of important complex data structures
|
Indicative content
| -
Review of Classes and objects, stacks
-
Dynamic arrays, templates, queues, overloading
-
Abstract data types, pointers, linked lists
-
Destructors, copy constructors, linked lists implementation of stacks and queues
-
Trees, implementation in C++, traversals
-
Linear and binary searching, Binary search trees, AVL trees
-
Sorting (insertion sort, selection sort, heapsort, quicksort, mergesort)
-
Graphs, Dijkstra's algorithm for shortest paths
-
Kruskal's and Prim's algorithms for mininum spanning trees
-
Efficiency of algorithms
|
Assessment
|
Coursework (%)
|
40
|
Exam (%)
|
60
|
|
No. & duration of exam(s)
|
One 2-hour examination
|
Teaching & learning
|
3 lectures + 1 2-hour lab per week
Two programming assignments.
|
When taught
|
S2
|
Modes of delivery & student participation
|
Lectures, and lab classes where students develop their own software.
|
Pre-requisites of entry requirements
|
AC51002
|
Accessibility for students with disability
|
Students with disabilities are supported on this module through the University's Disability Support Services (http://www.dundee.ac.uk/disabilitysupport/) and will be given appropriate aid and guidance consistent with their disability.
A web site for students with disabilities in the School of Computing is also available at http://www.computing.dundee.ac.uk/staff/awaller/disability.asp
|
Corequisites
|
-
|
Antirequisites
|
-
|