Algorithm Design and Data Structures
- Cod y Modiwl
- CS21120
- Teitl y Modiwl
- Algorithm Design and Data Structures
- Blwyddyn Academaidd
- 2026/2027
- Semester
- Semester 1
- Cyd-gysylltydd y Modiwl
- Dr Christine Zarges
- Rhestr Ddarllen
- Gweld ar Aspire
- Rhagofynion
-
CC12320 neu CS12320
- Anghymharus (Unrhyw Flwyddyn Acad)
-
CC21120
- Staff Eraill sy'n Cyfrannu
- Dr Neil Mac Parthalain
- Dr James Finnis
- Dr Christine Zarges
- Professor Bernard Tiddeman
Dulliau Asesu
|
Math o Asesiad |
Manylion Asesiad |
Cyfran |
|---|---|---|
| Asesiad Semester | Programming Assignment: 50 Awr | 50% |
| Arholiad Semester | Blackboard Quiz: 2 Awr (Invigilated) | 50% |
| Asesiad Ailsefyll | Programming Assignment: 50 Awr | 50% |
| Arholiad Ailsefyll | Blackboard Quiz: 2 Awr (Invigilated) | 50% |
Canlyniadau Dysgu
Wedi cwblhau'r modiwl dylai'r myfyrwyr fedru:
- Demonstrate their understanding of the principles of abstraction and encapsulation as they apply to the design of abstract data types and programs.
- Analyse and evaluate the time and space behaviour of algorithms and understand how this is expressed and determined.
- Recognise the importance of this analysis in the design of software.
- Describe and apply some of the main approaches to algorithm design such as greedy algorithms, divide and conquer and dynamic programming.
- Demonstrate judgement in evaluating and choosing appropriate data structures and algorithms for a range of programming problems.
- Design and implement significant programs in Java.
Disgrifiad cryno
This module builds on the foundations of the first year modules on program design and provides a thorough grounding in the design of data structures and algorithms and gives further insight into object-oriented design.
Cynnwys
1. Basic abstract data types: Introduction to abstract data types; Basic data structures; Stacks, Queues, Priority Queues and their implementations.
2. Storing and Retrieving Data by Key: The Map abstract data type and related abstract data types; Implementations using basic data structures; Hashing; Binary search trees; Balanced binary search trees.
3. Design paradigms for algorithms: Introduction to algorithm design; Brute force; Recursion; Greedy algorithms; Divide & Conquer; Dynamic programming
4. Representing complex relationships with graphs: Terminology; Implementation; Representation; Graph traversal; Problem modelling and solving using graphs, e. g., planning a communications network (minimum spanning trees), finding a route (shortest paths).
Sgiliau Modiwl
|
Math o Sgiliau |
Manylion Sgiliau |
|---|---|
| Cyfathrebu | Written skills will be needed to complete supporting documents to accompany assessed coursework. |
| Datblygu personol a chynllunio gyrfa | Carefully time management will be needed as so to enable students to complete coursework etc. A frequent topic of interview questions for programmers. |
| Datrys Problemau | This is inherent in both the formative practical work and the assessed coursework. |
| Gwella dysgu a pherfformiad ei hun | Students are required to engage in self study. Completing the assignment requires improvements in programming skills. Both the assignment and the exam requires understanding challenging concepts. |
| Rhifedd | Particularly in algorithm analysis. |
| Sgiliau pwnc penodol | See module title and content. |
| Sgiliau ymchwil | The students wil need to search for and use relevant technical information while completing practical and assessed coursework. |
| Technoleg Gwybodaeth | The whole module concerns this area. |
Nodau
Mae'r modiwl hwn yn cydymffurfio a FfCChC Lefel 5
Computer Science,Aberystwyth University, Llandinam Building, Penglais, Aberystwyth,
01970 622424 : +44 : +44 (0)1970 622021
cs-office@aber.ac.uk: cs-office@aber.ac.uk
