Course co-ordinator(s): Dr Rob Stewart (Edinburgh), Dr Mohamed Abdelshafy (Dubai).
Aims:
- To develop further skills and techniques in programming in a high-level language.
Detailed Information
Pre-requisites: none.
Location: ALP, Dubai, Edinburgh.
Semester: 2.
Syllabus:
- static structures – tables
- linear techniques e.g. search, delete, update
- string & text processing
- dynamic structures – stacks & queues
- recursive techniques – linear recursion, accumulation recursion
- sorting & searching e.g. binary search, quicksort, merge sort, hash tables
- linked structures – lists – construction, traversal, delete, update
- linked structures – trees – construction, traversal, delete, update, balance
- file processing
- introductory complexity & “big O” notation
Learning Outcomes: Subject Mastery
Understanding, Knowledge and Cognitive Skills Scholarship, Enquiry and Research (Research-Informed Learning)
- To understand properties of and algorithms for fundamental static, dynamic and linked data structures
- To know when to deploy fundamental data structures and algorithms in practical problem solving
- To gain mastery of fundamental linear and recursive programming techniques
- To know when to deploy linear and recursive programming techniques in practical problem solving
- To understand fundamental techniques for processing very large data sets from files
- To gain skill in elementary analyses of fundamental algorithms and data structures to give insight into their time and space complexity bounds
- To understand correspondences between different programming techniques
- To understand correspondences between different data structures and algorithms
Learning Outcomes: Personal Abilities
Industrial, Commercial & Professional Practice Autonomy, Accountability & Working with Others Communication, Numeracy & ICT
- To understand how the choice of algorithms and data structures determines the efficacy of proposed solutions to problems
- To be able to explain the implications of choosing particular algorithms and data structures for the time and space behaviour of solutions
Assessment Methods:
Assessment: Examination: (weighting – 50%) Examination: (weighting – 50%)
Re-assessment: Examination: (weighting – 100%)
SCQF Level: 7.
Credits: 15.

