Data Structures and Algorithms (C++)

UTS

Course Description

  • Course Name

    Data Structures and Algorithms (C++)

  • Host University

    UTS

  • Location

    Sydney, Australia

  • Area of Study

    Computer Info Systems, Computer Programming, Computer Science, Information Sciences, Information Technologies

  • Language Level

    Taught In English

  • Prerequisites

    31244 Applications Programming OR 31469 Object-oriented Design OR 31488 Programming Foundations OR 31508 Programming Fundamentals OR 48024 Applications Programming

    Recommended studies: basic programming concepts: variables, loops and decisions; basic file manipulation in UNIX: directories and files, editing files, re-direction; basic understanding of the standard Von Neumann computer model: the fetch-execute cycle, single memory with byte addressing, input and output with disks, keyboard and screen; understanding of character sets and internal data representations, including ASCII, signed integers, floating point

    Undergraduate

  • Course Level Recommendations

    Upper

    ISA offers course level recommendations in an effort to facilitate the determination of course levels by credential evaluators.We advice each institution to have their own credentials evaluator make the final decision regrading course levels.

    Hours & Credits

  • Credit Points

    6
  • Recommended U.S. Semester Credits
    4
  • Recommended U.S. Quarter Units
    6
  • Overview

    Description
    This subject teaches students how to design, develop and evaluate data structures and algorithms to meet predefined quality characteristics of functionality (suitability) and usability (understandability, learnability, operability, compliance). Software solutions are implemented using C++. Concepts, theories and technologies underlying the methods and techniques are introduced and explained as required.
     
    Subject objectives
    Upon successful completion of this subject students should be able to:
     
    1. Explain the basic data structures and algorithms for manipulating them.
    2. Implement these data structures and algorithms in the C++ language.
    3. Integrate these data structures and algorithms in larger programs.
    4. Code and test well-structured programs of moderate size using the C++ language.
    5. Apply principles of good program design to the C++ language.
    This subject also contributes specifically to the development of the following course intended learning outcomes:
     
    Identify and apply relevant problem solving methodologies (B.1)
    Design components, systems and/or processes to meet required specifications (B.2)
    Implement and test solutions (B.5)
    Content
    C++ constructs including templates and the STL
    Program design
    Design, implementation, and evaluation of data structures
    Design, implementation, and evaluation of algorithms
    Recursion
    Computability, NP-Completeness, Optimization
    Assessment
    Assessment task 1: Programming Assignment 1
    Objective(s):
    This assessment task addresses the following subject learning objectives:
     
    2, 3, 4 and 5
     
    This assessment task contributes to the development of the following course intended learning outcomes:
     
    B.1, B.2 and B.5
     
    Type: Exercises
    Groupwork: Individual
    Weight: 25%
    Length:
    200-300 lines of code.
     
    Criteria linkages:
    Criteria Weight (%) SLOs CILOs
    Functionality 50 2, 3, 4, 5 B.5
    Design 35 2, 3, 4, 5 B.2
    Programming Style 15 2, 3, 4, 5 B.1
    SLOs: subject learning objectives
    CILOs: course intended learning outcomes
    Assessment task 2: Programming Assignment 2
    Objective(s):
    This assessment task addresses the following subject learning objectives:
     
    2, 3, 4 and 5
     
    This assessment task contributes to the development of the following course intended learning outcomes:
     
    B.1, B.2 and B.5
     
    Type: Exercises
    Groupwork: Individual
    Weight: 35%
    Length:
    300-400 lines of code.
     
    Criteria linkages:
    Criteria Weight (%) SLOs CILOs
    Functionality 50 2, 3, 4, 5 B.5
    Design 35 2, 3, 4, 5 B.2
    Programming Style 15 2, 3, 4, 5 B.1
    SLOs: subject learning objectives
    CILOs: course intended learning outcomes
    Assessment task 3: Final Examination
    Objective(s):
    This assessment task addresses the following subject learning objectives:
     
    1
     
    This assessment task contributes to the development of the following course intended learning outcomes:
     
    B.1
     
    Type: Examination
    Groupwork: Individual
    Weight: 40%
    Length:
    3 Hour exam
     
    Criteria linkages:
    Criteria Weight (%) SLOs CILOs
    Correctness of solution in 35 multiple choice questions 100 1 B.1
    SLOs: subject learning objectives
    CILOs: course intended learning outcomes
    Minimum requirements
    In order to pass the subject you must attain all of the following minimum requirements
     
    Minimum of 16 out of 40 (40%) in the final exam.
    Minimum of 50 out of 100 (50%) in the overall mark
    If you fail to achieve the first requirement but meet the second then your final grade will be set to X (fail)

Course Disclaimer

Courses and course hours of instruction are subject to change.

Credits earned vary according to the policies of the students' home institutions. According to ISA policy and possible visa requirements, students must maintain full-time enrollment status, as determined by their home institutions, for the duration of the program.