Short Title:Algorithmic Analysis
Full Title:Algorithmic Analysis
Language of Instruction:English
Module Code:ALGO H4001
 
Credits: 5
Field of Study:Computer Science
Module Delivered in 2 programme(s)
Reviewed By:FINBARR FEENEY
Module Author:MARGARET FINNEGAN
Module Description:Analysis of algorithms and design of algorithms. This module provides the student with the knowledge and skills to analyse and design algorithms.
Learning Outcomes
On successful completion of this module the learner will be able to:
LO1 To carry out a basic complexity analysis of algorithms and estimate their worst-case and average-case behaviour
LO2 Understand and analyse the resource requirements of algorithms and data structures.
LO3 Identify the most appropriate algorithms and data structure to solve various types of computing problems
LO4 Design software that can search and sort data structures such as Trees, Priority Queues, Dictionaries, and Graphs.
 

Module Content & Assessment

Course Work
Assessment Type Assessment Description Outcome addressed % of total Assessment Date
Continuous Assessment Continuous Assessment 1 - In class practical and theory exam. A typical task would involve the: analysis of a given algorithm (e.g. sorting, searching, tree traversal) to determine its time complexity. The exam would also include a number of theory questions. For example, given a graph depicting the growth rate functions of algorithms, determine which algorithm performs best for given input values. Task assessed in terms of: use of mathematical notations and formulae to represent programming constructs; application of appropriate mathematical tools and techniques that derive the algorithm’s growth rate function; knowledge and understanding of the theory of algorithm analysis. 1,2,4 20.00 n/a
Continuous Assessment Continuous Assessment 2 - in class practical and theory exam. A Typical Task might be to: formulate the recurrence relations for a given recursive algorithm (e.g. a shortest path algorithm) and the solution of these equations. The exam would include a number of theory questions. Such as the different ways in which data structures (e.g. priority queues, trees, graphs) can be represented, their performance and limitations and when to choose one over another for a specific algorithm. Task assessed in terms of: derivation of recurrence relations from an algorithm’s pseudo-code; application of a method for solving recurrence relations; knowledge of data structures, when to use them and their spa 1,3,4 20.00 n/a
End of Module Formal Examination
Assessment Type Assessment Description Outcome addressed % of total Assessment Date
Formal Exam n/a 1,2,3 60.00 End-of-Semester

TU Dublin – Tallaght Campus reserves the right to alter the nature and timings of assessment

 

Module Workload

Workload: Full Time
Workload Type Workload Description Hours Frequency Average Weekly Learner Workload
Lecture Class based instruction. Theory and worked examples. 2.00 Every Week 2.00
Lab Lab assignments and practical work 1.00 Every Week 1.00
Independent Learning Reading, researching. 2.00 Every Week 2.00
Total Weekly Learner Workload 5.00
Total Weekly Contact Hours 3.00
Workload: Part Time
Workload Type Workload Description Hours Frequency Average Weekly Learner Workload
Lecture Class based instruction. Theory and worked examples. 1.00 Every Week 1.00
Lab Lab assignments and practical work 1.00 Every Week 1.00
Independent Learning Time Reading and researching. 2.00 Every Week 2.00
Total Weekly Learner Workload 4.00
Total Weekly Contact Hours 2.00
 

Module Resources

Recommended Book Resources
  • Addison Wesley, The Art of Computer Programming: Fundamental Algorithms Volume. 1: Fundamental Algorithms [ISBN: 978-02018968]
  • Narasimha Karumanchi, 2017, Data Structures and Algorithms Made Easy: 700 Data Structure and Algorithmic Puzzles, 5 Ed., CreateSpace [ISBN: 978-1456549886]
  • Michael T. Goodrich, Roberto Tamassia, David M. Mount, 2011, Data Structures and Algorithms in C++, 2nd Ed. [ISBN: 978-0470383278]
  • Mark Allen Weiss 2006, Data structures and algorithm analysis in C++, Pearson Addison-Wesley Boston [ISBN: 978-0321441461]
  • Robert Sedgewick, Philippe Flajolet 1996, An introduction to the analysis of algorithms, Addison-Wesley Reading, Mass. [ISBN: 978-0-201-40009-0]
  • Stephen Skiena 2010, The Algorithm Design Manual, 2 Ed., Springer [ISBN: 9781849967204]
  • Addison-Wesley 2011, Algorithms, 4 Ed., Addison-Wesley [ISBN: 032157351X]
This module does not have any article/paper resources
Other Resources
 

Module Delivered in

Programme Code Programme Semester Delivery
TA_KACOS_B Bachelor of Science (Honours) in Computing with Software Development 8 Elective
TA_KCOSD_B Bachelor of Science (Honours) in Computing with Software Development - Year 4 ( Add on) 2 Elective