Course Outline Course Information Course Code: XBCS3013N Course Name: DATA STRUCTURES AND ALGORITHMS Lecturer(s): Bridget Merliza a/p Paul Christopher Archibald Credit Value: 3 Pre-requisite: None Duration: 12 weeks Lecture hours/ week – 1 Tutorial hours/ week – 2 Synopsis: The module provides students with the fundamental knowledge and skills of data structures and the associated algorithms that are essential in the design and development application involves data structures. Learning Outcomes: At the end of the course, the students will be able to: 1. Analyse data structures and algorithms to solve a given problem. (C4, PLO2) 2. Develop an application using the appropriate data structure and algorithm for a specified requirement. (P4, PLO3) 3. Justify how the application meets the specified requirements. (A3, PLO6) XBCS3013N Data Structures and Algorithms February 2025 semester Topics Covered by Weeks Wk/No 1 2 3 Topic (per syllabus in MQA document) Dynamic and Static Data Types – Part 1 • Review of structured programming Concepts • Introduction to data structures Class Schedule (date and time) Lecture 4 Feb 2025 (Tuesday) 8 am – 9 am Dynamic and Static Data Types – Part 2 • Definition and examples of dynamic types • Dynamic and static storage • Types of linked list Lecture (online – video) List • Linear list • Linked list • Linked list operations Lecture 18 Feb 2025 (Tuesday) 8 am – 9 am CLO Mapping Planned Activities Remarks 1, 2 Lecture – Revision on C++ codes – Functions, Arrays, Structures 3 Feb 2025 (Orientation) Tutorial 5 Feb 2025 (Wednesday) 8 am – 10 am 12 pm – 2 pm Tutorial Write codes to implement static and dynamic types of data. 1, 2 Tutorial 12 Feb 2025 (Wednesday) 8 am – 10 am 12 pm – 2 pm Stack • Concepts and definition • Stack operations Lecture 25 Feb 2025 (Tuesday) 8 am – 9 am Tutorial 26 Feb 2025 (Wednesday) 8 am – 10 am 12 pm – 2 pm XBCS3013N Data Structures and Algorithms 11 Feb 2025 Thaipusam Tutorial – Write codes to implement static and dynamic data types using structures, functions, pointers and arrays. 2, 3 Lecture – Design Linked List applications. Tutorial – Write codes to implement linked list applications. Tutorial 19 Feb 2025 (Wednesday) 8 am – 10 am 12 pm – 2 pm 4 Lecture – Assignment Briefing (video) 2 Lecture – Design simple stack applications using array and linked list. Tutorial – Write codes to implement stack applications using array and linked list. February 2025 semester – Wk/No 5 Topic (per syllabus in MQA document) Queue • Concepts and definition • Queue operations Class Schedule (date and time) Lecture 4 Mar 2025 (Tuesday) 8 am – 9 am CLO Mapping Planned Activities Remarks 2, 3 Lecture – Design simple queue applications using array and linked list. ACCA Exam week – To check Labs availability Tutorial – Write codes to implement queue applications using array and linked list.. Tutorial 5 Mar 2025 (Wednesday) 8 am – 10 am 12 pm – 2 pm 6 Graphs • Concepts and definition • Graphs operations Lecture 11 Mar 2025 (Tuesday) 8 am – 9 am 3 Trees • Concepts and definition • Traversal Methods Lecture 18 Mar 2025 (Tuesday) 8 am – 9 am 1, 2 Tutorial 19 Mar 2025 (Wednesday) 8 am – 10 am 12 pm – 2 pm 8 Binary Search Tree • Concepts and definitions • BST operations Lecture 25 Mar 2025 (Tuesday) 8 am – 9 am Tutorial 26 Mar 2025 (Wednesday) 8 am – 10 am 12 pm – 2 pm 9 Semester Break XBCS3013N Data Structures and Algorithms Assignment Submission: 30% Tutorial – Write codes to implement graph applications using array and linked list. Tutorial 12 Mar 2025 (Wednesday) 8 am – 10 am 12 pm – 2 pm 7 Lecture – Design simple graph applications using array and linked list. Lecture – Answer short questions concerning the concept of tree applications. 18 Mar 2025 – Nuzul Quran Replace on 8 April 2025 (Quiz) 9 am – 10 am. Book room Tutorial – Answer questions concerning the concept of tree applications. 3 Lecture – Answer short questions concerning the concept of binary tree and binary parse tree. Assignment Due Date : 28th March 2025 Tutorial – Answer questions concerning binary tree and binary parse tree. 31 Mar – 6 Apr February 2025 semester Wk/No 10 11 12 13 - 15 Topic (per syllabus in MQA document) Sorting • Concepts and definitions • Sorting algorithms Searching • Concepts and definition • Searching methods Revision Final Exam Class Schedule (date and time) Lecture 8 Apr 2025 (Tuesday) 8 am – 10 am Tutorial 9 Apr 2025 (Wednesday) 8 am – 10 am 12 pm – 2 pm Lecture 15 Apr 2025 (Tuesday) 8 am – 9 am CLO Mapping Planned Activities Remarks 1 ,2 Lecture – Answer short questions regarding sorting concepts. Quiz : 30% Venue : 03-CRM-08 Tutorial – Answer short questions regarding sorting concepts. 3 Lecture – Answer short questions regarding searching algorithms. Tutorial 16 Apr 2025 (Wednesday) 8 am – 10 am 12 pm – 2 pm Tutorial – Write applications to demonstrate various searching algorithms Lecture 22 Apr 2025 (Tuesday) 8 am – 9 am Lecture – Write answers to SAQ questions for revision Tutorial 23 Apr 2025 (Wednesday) 8 am – 10 am 12 pm – 2 pm 28 Apr – 16 May Tutorial – Write answers to LAQ questions References 1. Mohanty, S.N. & Tripathy, P.K., (2021) Data Structures and Algorithms using C++ : A Practical Implementation, Wiley-Scrivener, Kindle Edition 2. Malhotra D. & Malhotra N., (2019) Data Structures and Program Design Using C++ : A Self-Teaching Introduction, Mercury Learning and Information, Kindle Edition XBCS3013N Data Structures and Algorithms February 2025 semester Assessment Method Quiz Assignment Final Examination Weightage 30% 30% 40% Total 100% Submission/Test Date 8 Apr 2025 28 Mar 2025 Week 13-15 Mapping to CLO CLO1 CLO2, CLO3 CLO1 The final marks will be the weighted average of the scores for the above components. APPLICABLE TO PROGRAMMES WITH FINAL EXAMINATION: To pass a subject, the student must fulfil the FIVE (5) conditions below: 1. Student must attempt all the assessment components required by the subject including the coursework and final examination / final assessment. 2. Score minimum of 40 marks or more in the final examination. 3. Score minimum of 50 marks or more in total coursework marks. 4. The student who fails to obtain at least a pass in the coursework (50%) will not be allowed to re-sit their failed examination component even though the overall mark of the subject is above 40 (grade D). 5. Students must PASS both the Coursework and Final Exam/Final Assessment to PASS the subject. For Condition 1, that there must be sufficient evidence to prove that students have at least tried to complete each component. Merely submitting any coursework, absence from examinations or failure to prove that you have carried out necessary efforts to complete any components will amount to 'noncompletion' of the component and will result in 'zero' mark awarded. This includes submitting of empty pages or negligible work, among other examples. Grading system – Please refer to the Student Handbook. Mapping of Learning Outcomes (not applicable to common courses) Bachelor of Computer Science (Hons) Programme Learning Outcomes (PLO) PLO1 Analyze fundamental knowledge based on concepts, principles and theories related to Computer Science. PLO2 Analyze algorithms and techniques to design and optimize computing solutions PLO3 Adapt appropriate methodologies and techniques for modelling, designing, developing and evaluating computing solutions PLO4 Collaborate with diverse individuals to attain objectives and outcomes. PLO5 Communicate and interact effectively to a diverse audience. PLO6 Utilise digital skills for problem solving related to the area of Computer Science. PLO7 Utilise numeracy skills for problem solving the field of computer science PLO8 Demonstrate leadership, teamwork, accountability, and responsibility by working towards predetermined goals and outcomes in the area of Computer Science. PLO9 Commit to principles of lifelong learning in academic and career progression. PLO10 Apply entrepreneurial mindset in delivering solutions under changing industry landscapes. PLO11 Uphold professional and ethical practices in delivering services related to the field of computer science. XBCS3013N Data Structures and Algorithms February 2025 semester Course Learning Outcomes (CLO) CLO1 CLO2 CLO3 Programme Learning Outcomes (PLO) PLO1 PLO2 PLO3 PLO4 PLO5 PLO6 PLO7 PLO8 PLO9 PLO10 PLO11 Bachelor in Software Engineering (Hons) Programme Learning Outcomes (PLO) PLO1 Analyze fundamental knowledge based on concepts, principles and theories related to Software Engineering. PLO2 Analyze theoretical principles of Software Engineering in software development. PLO3 Adapt appropriate methodologies and techniques for analyzing, modelling, designing, testing and maintaining large scale software. PLO4 Collaborate with diverse individuals to attain objectives and outcomes. PLO5 Communicate and interact effectively to a diverse audience. PLO6 Utilise digital skills for problem solving related to the area of Software Engineering. PLO7 Utilise numeracy skills for problem solving the field of Software Engineering. PLO8 Demonstrate leadership, teamwork, accountability, and responsibility by working towards predetermined goals and outcomes in the area of Software Engineering. PLO9 Commit to principles of lifelong learning in academic and career progression. PLO10 Apply entrepreneurial mindset in delivering solutions under changing industry landscapes. PLO11 Uphold professional and ethical practices in delivering services related to the field of Software Engineering. Course Learning Outcomes (CLO) CLO1 CLO2 CLO3 Programme Learning Outcomes (PLO) PLO1 PLO2 PLO3 PLO4 PLO5 PLO6 PLO7 PLO8 PLO9 PLO10 PLO11 Attendance Students must meet the 80% attendance requirement. Students will be barred from the final examination if attendance is less than 80%. Important Notes • There will be no replacement for Progress Test, Assignment and Final Examination should students absent themselves for these assessments. The only two exceptions are if you had medical restraints or a death in the family, in which case please INFORM the course lecturer BEFORE the test/examination. Please submit the supporting documents within TWO DAYS of the assessment date. XBCS3013N Data Structures and Algorithms February 2025 semester • Students are expected to be on independent learning mode and to do the tutorials and exercises as recommended by the course lecturer. Prepared by (Lecturer): Verified by: (PL/ADH/HOD/HOS) Name: Date: Name: Date: XBCS3013N Data Structures and Algorithms February 2025 semester