COMP SCI 2004NA - Data Structures and Algorithms
Ngee Ann Academy - Trimester 1 - 2014
General Course Information
Course Code COMP SCI 2004NA Course Data Structures and Algorithms Coordinating Unit School of Computer Science Term Trimester 1 Level Undergraduate Location/s Ngee Ann Academy Units 3 Course Description Program development techniques including basic ideas of correctness and proof; Recursion. Approaches to Problem Solving. Notion of abstract data type, representation of lists, stacks, queues, sets, trees and hash tables. Notions of complexity and analysis; Choosing data structures
Course Coordinator: Dr Bradley AlexanderLecturer: Dr Kwang Hua Lim
The full timetable of all activities for this course can be accessed from Course Planner.
Course Learning Outcomes
- Understanding of fundamental Data Structures including linked-lists, trees, binary search trees, AVL trees, stacks, queues, priority queues, and hash-tables and skiplists.
- Understanding of fundamental abstract data types which can include: Maps, Sets and Vectors.
- Ability to program data structures and use them in implementations of abstract data types.
- Ability to devise novel solutions to small scale programming challenges involving data structures and and recursion.
- Understanding of basic algorithmic complexity.
- Ability to estimate the algorithmic complexity of simple, non-recursive programs
- Ability to perform simple inductive proofs and proofs by contradiction and reason about program correctness and invariants.
- Ability to sensibly select appropriate data structures and algorithms for problems and to justify that choice.
University Graduate Attributes
This course will provide students with an opportunity to develop the Graduate Attribute(s) specified below:
University Graduate Attribute Course Learning Outcome(s) Knowledge and understanding of the content and techniques of a chosen discipline at advanced levels that are internationally recognised. 1,2,5,8 The ability to locate, analyse, evaluate and synthesise information from a wide variety of sources in a planned and timely manner. 6,7,8 An ability to apply effective, creative and innovative solutions, both independently and cooperatively, to current and future problems. 2,3,4,7 A proficiency in the appropriate use of contemporary technologies. 1,5,8
Required ResourcesThe textbook for this course is Data Structures and Algorithm Analysis in Java by Mark Weiss, 2nd Ed. Pearson International Edition, 2007, ISBN 0-321- 37319-7. NOTE: This is a textbook, not a reference book, for this course and as such it is assumed that everyone has a copy.
Recommended ResourcesNo additional recommended resources other than the forum and web pages.
Online LearningThe subject web page is https://cs.adelaide.edu.au/users/second/dsa/14r1- dsa-Naaec/- this contains all the course materials (or references to them). Make sure you check it regularly. In addition to the subject web page there is an electronic "forum" or "bulletin board" (access from http://forums.cs.adelaide.edu.au ) which will be used to ￼￼￼ make announcements. It is your responsibility to check this.
Learning & Teaching Activities
Learning & Teaching ModesLectures, Tutorials, Laboratory Sessions, Offline assignments.
The information below is provided as a guide to assist students in engaging appropriately with the course requirements.There are four intensives for this course. The indicative workload for this course (including intensives) is approx 130 hours. This time includes time spent on the assignments, tutorials and revision.
Learning Activities SummaryLectures
The lecture schedule is on the subject web page; students are encouraged to attend lectures as material presented in lectures often includes more than is on the slides. Copies of the slides will be available via the subject web page, but you are strongly urged to take proper lecture notes.
There will be a total of six tutorials in this course – two per weekend, in the second through fourth teaching sessions. The schedule is available on the subject web page.
The practical work is critically important in this course. The practicals will happen weekly - there will be a total of eight (8) practicals.
Specific Course RequirementsNo specific course requirements other than the requirement that you turn up to the intensives and particpate in the course assessment activities.
Small Group Discovery ExperienceNot applicable to this course.
The University's policy on Assessment for Coursework Programs is based on the following four principles:
- Assessment must encourage and reinforce learning.
- Assessment must enable robust and fair judgements about student performance.
- Assessment practices must be fair and equitable to students and give them the opportunity to demonstrate what they have learned.
- Assessment must maintain academic standards.
Assessment SummaryThe assessment will include a written, closed book, two hour examination and eight practicals. The examination will contribute 70% of your final mark, the practicals 25%, and the tutorials 5%.
Like all other Computer Science courses, your marks will be capped at 44% (Fail) if your examination mark is less than 40%, or your combined practical marks and tutorial marks are less than 40%. This means you must get at least 40% on each on the two major components.
Additionally, you must get 50% overall to pass the course.
Assessment Related RequirementsPenalty for Late Submission of Assessment
Tasks The maximum mark that can be awarded will reduce by 25% for each day/part-day late. So after 4 days late, the maximum mark becomes zero.
Extensions for Assessment Tasks
Extensions will only be granted in exceptional circumstances. You should be starting the practicals as soon as you can. If you are seeking an extension, you must do so in writing to the coordinator providing evidence to support your application. Application must be made prior to the due date.
Assessment DetailEach tutorial is worth 1% of the course mark
Each practical assignment is worth 3% of the course mark with the exception of practical 2 which is worth 4% of the course mark.
Practical 3 is fully manually assessed but submission is still via the web submission system.
You are required to submit your practical work via the Computer Science Web submission system and also required to have all your work in the SVN repository. Details are on each of the practical description pages.
Tutorials must be submitted to the lecturer following instructions given in the first intensive of the course.
Grades for your performance in this course will be awarded in accordance with the following scheme:
M10 (Coursework Mark Scheme) Grade Mark Description FNS Fail No Submission F 1-49 Fail P 50-64 Pass C 65-74 Credit D 75-84 Distinction HD 85-100 High Distinction CN Continuing NFE No Formal Examination RP Result Pending
Further details of the grades/results can be obtained from Examinations.
Grade Descriptors are available which provide a general guide to the standard of work that is expected at each grade level. More information at Assessment for Coursework Programs.
Final results for this course will be made available through Access Adelaide.
The University places a high priority on approaches to learning and teaching that enhance the student experience. Feedback is sought from students in a variety of ways including on-going engagement with staff, the use of online discussion boards and the use of Student Experience of Learning and Teaching (SELT) surveys as well as GOS surveys and Program reviews.
SELTs are an important source of information to inform individual teaching practice, decisions about teaching duties, and course and program curriculum design. They enable the University to assess how effectively its learning environments and teaching practices facilitate student engagement and learning outcomes. Under the current SELT Policy (http://www.adelaide.edu.au/policies/101/) course SELTs are mandated and must be conducted at the conclusion of each term/semester/trimester for every course offering. Feedback on issues raised through course SELT surveys is made available to enrolled students through various resources (e.g. MyUni). In addition aggregated course SELT data is available.
- Academic Support with Maths
- Academic Support with writing and speaking skills
- Student Life Counselling Support - Personal counselling for issues affecting study
- International Student Support
- AUU Student Care - Advocacy, confidential counselling, welfare support and advice
- Students with a Disability - Alternative academic arrangements
- Reasonable Adjustments to Teaching & Assessment for Students with a Disability Policy
- LinkedIn Learning
Policies & Guidelines
This section contains links to relevant assessment-related policies and guidelines - all university policies.
- Academic Credit Arrangement Policy
- Academic Honesty Policy
- Academic Progress by Coursework Students Policy
- Assessment for Coursework Programs
- Copyright Compliance Policy
- Coursework Academic Programs Policy
- Elder Conservatorium of Music Noise Management Plan
- Intellectual Property Policy
- IT Acceptable Use and Security Policy
- Modified Arrangements for Coursework Assessment
- Student Experience of Learning and Teaching Policy
- Student Grievance Resolution Process
Students are reminded that in order to maintain the academic integrity of all programs and courses, the university has a zero-tolerance approach to students offering money or significant value goods or services to any staff member who is involved in their teaching or assessment. Students offering lecturers or tutors or professional staff anything more than a small token of appreciation is totally unacceptable, in any circumstances. Staff members are obliged to report all such incidents to their supervisor/manager, who will refer them for action under the university's student’s disciplinary procedures.
The University of Adelaide is committed to regular reviews of the courses and programs it offers to students. The University of Adelaide therefore reserves the right to discontinue or vary programs and courses without notice. Please read the important information contained in the disclaimer.