Red X iconGreen tick iconYellow tick icon


    Development and analysis of fundamental algorithms and data structures and their applications including: sorting and searching, dynamic programming, graph and tree algorithms, and string processing algorithms.

    About this paper

    Paper title Algorithms and Data Structures
    Subject Computer Science
    EFTS 0.1500
    Points 18 points
    Teaching period Semester 1 (On campus)
    Domestic Tuition Fees ( NZD ) $1,173.30
    International Tuition Fees Tuition Fees for international students are elsewhere on this website.
    COMP 160 or COMP 162
    COSC 242
    Recommended Preparation
    100 level MATH, STAT or COMO paper, BSNS 112 or FINC 102
    Schedule C
    Arts and Music, Commerce, Science

    Computer Science Adviser

    Teaching staff

    Professor Michael Albert

    Associate Professor Haibo Zhang


    Textbooks are not required for this paper.

    Graduate Attributes Emphasised
    Interdisciplinary perspective, Lifelong learning, Scholarship, Communication, Critical thinking, Information literacy, Research, Self-motivation, Teamwork.
    View more information about Otago's graduate attributes.
    Learning Outcomes

    By completion of this paper students are expected to:

    • Understand the basic principles of analysing algorithmic complexity including “big-O” and related notation.
    • Understand fundamental structural properties of algorithms including: greedy algorithms, dynamic programming, divide and conquer, depth and breadth first search, time-space trade-offs.
    • Understand fundamental data structures used in sorting and searching, graph, tree and network representations.
    • Demonstrate an ability to apply such algorithms in practical problems including the ability to choose the appropriate algorithm and/or data structure for the context.
    • Understand how the computational overheads and scalability of algorithms or data structures affect their suitability in applications.
    • Acquire increased proficiency in programming


    Semester 1

    Teaching method
    This paper is taught On Campus
    Learning management system

    Computer Lab

    Stream Days Times Weeks
    Attend one stream from
    A1 Monday 09:00-10:50 9-13, 15-22
    A2 Monday 12:00-13:50 9-13, 15-22
    A3 Monday 14:00-15:50 9-13, 15-22
    AND one stream from
    B1 Thursday 09:00-10:50 9-13, 15-16, 18-22
    B2 Thursday 12:00-13:50 9-13, 15-16, 18-22
    B3 Thursday 14:00-15:50 9-13, 15-16, 18-22


    Stream Days Times Weeks
    A1 Tuesday 11:00-11:50 9-13, 15-22
    Friday 11:00-11:50 9-12, 15-22


    Stream Days Times Weeks
    A1 Wednesday 16:00-16:50 9-13, 15-22
    Back to top