MA314      Half Unit
Algorithms in Java

This information is for the 2015/16 session.

Teacher responsible

Dr Konrad Swanepoel

Availability

This course is available on the BSc in Business Mathematics and Statistics, BSc in Mathematics and Economics, BSc in Mathematics with Economics and BSc in Statistics with Finance. This course is available as an outside option to students on other programmes where regulations permit. This course is available with permission to General Course students.

Pre-requisites

Introduction to Abstract Mathematics (MA103), or an equivalent course giving a background in rigorous mathematics.

Course content

Basics of Java programming. The Euclidean algorithm. Time complexity of algorithms. Asymptotic notation. Heaps. Sorting. Recursive algorithms. Stacks and queues. Linked lists. Graphs. Breadth-first and depth-first search. Connectivity and topological sorting. Dijkstra's algorithm. Closest pair in the plane.

Teaching

20 hours of lectures, 1 hour of lectures and 10 hours of classes in the MT. 1 hour of lectures in the ST.

Formative coursework

Written answers to set problems will be expected on a weekly basis.

Indicative reading

T H Cormen, C E Leiserson & R L Rivest, Introduction to Algorithms, MIT Press 1990 (or 2nd edn, 2001 or 3rd edn, 2009); J R Hubbard, Programming with Java, Schaum's outlines, McGraw-Hill, 2nd edn, 2004; R Sedgewick, K Wayne, Introduction to programming in Java, An interdisciplinary approach, Addison Wesley, 2008; D Flanagan, Java in a Nutshell, 3rd edn, or later, O'Reilly 1999 

Assessment

Exam (80%, duration: 2 hours) in the main exam period.
Coursework (20%) in the MT.

Key facts

Department: Mathematics

Total students 2014/15: 35

Average class size 2014/15: 18

Capped 2014/15: No

Value: Half Unit

Guidelines for interpreting course guide information

PDAM skills

  • Self-management
  • Problem solving
  • Application of information skills
  • Communication
  • Application of numeracy skills
  • Specialist skills