COS30008 - Unit Outline - HCMC - Spring2024 - Version05
COS30008 - Unit Outline - HCMC - Spring2024 - Version05
Unit Outline
COS30008
Data Structures and Patterns
Semester Jan, 2024
Co-requisites Nil
Concurrent pre-requisites Nil
Anti-requisites Nil
Assumed knowledge Nil
Credit Points 12.5
Campus/Location Ho Chi Minh City
Mode of Delivery Blended
Aims
COS30008 – Data Structures and Patterns studies the design, implementation, and application of
data structures as a means for algorithmic problem solving. Each problem exhibits specific
characteristics with respect to resource requirements, data representation, and software
architecture. The study of data structures is primarily concerned with the following questions:
• How can a given problem be effectively expressed?
• What are suitable data representations for specifying computational processes?
• What is the impact of data and its representation with respect to time and space consumption?
• What are the recurring structural artifacts in software and how can we identify them in order to
facilitate problem solving?
Unit Learning Outcomes
Students who successfully complete this unit should be able to:
1. Solve problems using object-oriented design and implementation techniques.
2. Interpret the trade-offs and issues involved in the design, implementation, and application of
various data structures with respect to a given problem.
3. Design, implement, and evaluate software solutions using behavioral, creational, and
structural software design patterns.
4. Explain the purpose and answer questions about data structures and design patterns that
illustrate strengths and weaknesses with respect to resource consumption.
5. Assess the impact of data structures and algorithms.
6. Evaluate algorithm designs and perform best-, average-, and worst-case analysis.
Graduate Attributes
This unit may contribute to the development of the following Swinburne Graduate Attributes:
§ Communication skills
§ Teamwork skills
§ Digital literacies
Content
• Introduction
o Basic concepts and data type construction in C++
o Sets, arrays, indexer, and iterators
o Asymptotic algorithm analysis
• Fundamental Data Structures
o Dynamic arrays
o Single-linked lists
• Data Types and Abstraction
o Abstract data types
o Design patterns
o Pointers
o Memory management
• Basic Container Types
o Stacks
o Queues
o Ordered lists
o Hash tables
• Hierarchical Data Types
o Trees
o Graphs
o Tree traversals
• Algorithmic Patterns and Problem Solvers
o Basics
o Performance analysis
o Greedy algorithms
o Backtracking
o Divide-and-Conquer
Feedback provided by previous students through the Student Survey has resulted in improvements
that have been made to this unit. Recent improvements include:
• The contents and assessment material is being continuously revised to incorporate selected
features of the latest C++ standard into the unit. Presently, C++17 is now supported by all
mainstream C++ compilers and C++ standard libraries. Hence, COS30008 uses C++17 a
reference standard.
Your grade is independent of anyone else's grade in this class. That is, we do not grade on a curve,
and everyone can get an HD. Our purpose in grading is to uphold a standard of quality and to give
you feedback: it is not to rank students. The final grade is calculated as follows:
All problem sets are equally weighted. In general, every problem set is worth a different number of
points. The maximum number of points equals 100%. You receive one grade for all problem sets,
which calculated as follows:
Homework grade = sum of all homework’s / number of homework’s
Example:
• Problem set 1: 50 out of 75 = 67%
• Problem set 2: 67 out of 80 = 84% • Problem set 3: 89 out of
90 = 99%
http://www.swinburne.edu.au/student/
Canvas
You should regularly access the Swinburne learning management system, Canvas, which is
available via the Current Students webpage or https://swinburne.instructure.com/ Canvas is
updated regularly with important unit information and communications.
Communication
All communication will be via your Swinburne email address. If you access your email through a
provider other than Swinburne, then it is your responsibility to ensure that your Swinburne email is
redirected to your private email address.
Academic Integrity
Academic integrity is about taking responsibility for your learning and submitting work that is
honestly your own. It means acknowledging the ideas, contributions and work of others;
referencing your sources; contributing fairly to group work; and completing tasks, tests and
exams without cheating.
Swinburne University uses the Turnitin system, which helps to identify inadequate citations, poor
paraphrasing and unoriginal work in assignments that are submitted via Canvas. Your Unit
Convenor will provide further details.
Plagiarising, cheating and seeking an unfair advantage with regards to an exam or assessment
are all breaches of academic integrity and treated as academic misconduct.
Plagiarism is submitting or presenting someone else’s work as though it is your own without full
and appropriate acknowledgement of their ideas and work. Examples include:
• using the whole or part of computer program written by another person as your own
• using the whole or part of somebody else’s written work in an essay or other assessable
work, including material from a book, journal, newspaper article, a website or database, a
set of lecture notes, current or past student’s work, or any other person’s work
• poorly paraphrasing somebody else’s work
• using a musical composition or audio, visual, graphic and photographic work created by
another
• using realia created by another person, such as objects, artefacts, costumes, models
• submitting assessments that have been developed by another person or service (paid or
unpaid), often referred to as contract cheating
• presenting or submitting assignments or other work in conjunction with another person or
group of people when that work should be your own independent work. This is regardless of
whether or not it is with the knowledge or consent of the other person(s). Swinburne
encourages students to talk to staff, fellow students and other people who may be able to
contribute to a student’s academic work but where an independent assignment is
required, the work must be the student’s own
• enabling others to plagiarize or cheat, including letting another student copy your work or
by giving access to a draft or completed assignment
Student support
Swinburne offers a range of services and resources to help you complete your studies
successfully. Your Unit Convenor or studentHQ can provide information about the study support
and other services available for Swinburne students.
Special consideration
If your studies have been adversely affected due to serious and unavoidable circumstances
outside of your control (e.g. severe illness or unavoidable obligation), you may be able to apply
for special consideration (SPC).
Applications for Special Consideration will be submitted via the SPC online tool normally no later
than 5.00pm on the third working day after the submission/sitting date for the relevant assessment
component.
Accessibility needs
Sometimes students with a disability, a mental health or medical condition or significant carer
responsibilities require reasonable adjustments to enable full access to and participation in
education. Your needs can be addressed by Swinburne's AccessAbility Services by negotiating
and distributing an 'Education Access Plan'. The plan makes recommendations to University
teaching and examination staff. You must notify AccessAbility Services of your disability or
condition within one week after the commencement of your unit to allow the University to make
reasonable adjustments.
Review of marks
An independent marker reviews all fail grades for major assessment tasks. In addition, a review of
assessment is undertaken if your final result is between 45 and 49 or within 2 marks of any grade
threshold.
You can ask the Unit Convenor to check the result for an assessment item or your final result. Your
request must be made in writing within 10 working days of receiving the result. The Unit Convenor
can discuss the marking criteria with you and check the aggregate marks of assessment
components to identify if an error has been made. This is known as local resolution.
If you are dissatisfied with the outcome of the local resolution, you can lodge a formal complaint.
Feedback, complaints and suggestions
In the first instance, discuss any issues with your Unit Convenor. If your concerns are not
resolved or you would prefer not to deal with your Unit Convenor, then you can complete a
feedback form. See https://www.swinburne.edu.au/corporate/feedback/
Advocacy
Should you require assistance with any academic issues, University statutes,
regulations, policies and procedures, you are advised to seek advice from Academic
Department and Student HQ Department.