0% found this document useful (0 votes)
2 views

Course Syllabus

The course syllabus for Data Structures and Algorithms aims to introduce students to various data structures, their implementations, and algorithms for sorting and searching. It includes a detailed outline of topics covered, such as linked lists, stacks, queues, trees, and graphs, along with hands-on laboratory work. Assessment methods consist of quizzes, assignments, a project, and a final exam, totaling 100% of the course grade.

Uploaded by

eliasaraya142
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

Course Syllabus

The course syllabus for Data Structures and Algorithms aims to introduce students to various data structures, their implementations, and algorithms for sorting and searching. It includes a detailed outline of topics covered, such as linked lists, stacks, queues, trees, and graphs, along with hands-on laboratory work. Assessment methods consist of quizzes, assignments, a project, and a final exam, totaling 100% of the course grade.

Uploaded by

eliasaraya142
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

Course Syllabus: Data Structures and Algorithms

Course Objectives:
 Introduce common data structures such as stacks, queues, and linked lists.
 Explore alternate methods of data organization and representation.
 Enable students to apply Data Structures and Algorithms concepts to real-world problem-solving.
 Provide hands-on experience with recursion, sorting, and searching on different data structures.
 Implement data structures using a selected programming language.
Course Outline:
Chapter 1: Introduction to Data Structures and Algorithms (4 hours)
 Introduction to Data Structures
o Abstract Data Types (ADTs)
o Abstraction
 Algorithms
o Properties of an algorithm
o Algorithm analysis concepts
o Complexity analysis
 Asymptotic Analysis
Chapter 2: Simple Sorting and Searching Algorithms (4 hours)
 Sorting Algorithms
o Insertion sort
o Selection sort
o Bubble sort
o Pointer sort
 Searching Algorithms
o Linear Search (Sequential search)
o Binary Search
Chapter 3: Linked Lists (4 hours)
 Review of Pointers and Dynamic Memory Allocation
 Singly Linked List and Its Implementation
 Doubly Linked List and Its Implementation
 Circular Linked Lists and Its Implementation

1
Prepared by Medhanye K
Chapter 4: Stacks (4 hours)
 Properties of Stack
 Array Implementation of Stack
 Linked List Implementation of Stack
 Applications of Stack
o Evaluation of Algebraic Expressions
o Infix to Postfix Conversion (Reverse Polish Notation)
o Function calls
Chapter 5: Queues (4 hours)
 Properties of Queue
 Array Implementation of Queue
 Linked List Implementation of Queue
 Double Ended Queue (Deque)
 Priority Queue
 Applications of Queues
Chapter 6: Trees (4 hours)
 Binary Trees and Binary Search Trees (BSTs)
 Basic Tree Operations
 Traversing a Binary Tree
 General Trees and Their Implementations
Chapter 7: Graphs (4 hours)
 Introduction to Graphs
 Directed vs. Undirected Graphs
 Graph Traversal Algorithms
Chapter 8: Advanced Sorting and Searching Algorithms (4 hours)
 Advanced Sorting
o Shell sort
o Quick sort
o Heap sort
o Merge sort
 Advanced Searching

2
Prepared by Medhanye K
o Hashing Techniques
Teaching and Learning Methods:
 Two contact hours of lectures per week
 Three hours of lab work per week
 Two hours of tutorials per week
 Home assignments
Assessment Methods:
 Quizzes: 20%
 Assignments: 10%
 Project: 20%
 Final Exam: 50%
 Total: 100%
Teaching Materials: Reference Books:
1. Robert Lafore, Data Structures and Algorithms in JAVA, 2nd Ed., Sams Publishing.
2. Jean Paul Tremblay & Paul G. Sorenson, An Introduction to Data Structures with
Applications, McGraw Hill.
3. E. Horowitz, S. Sahni, & D. Mehta, Fundamentals of Data Structures in C++, W.H
Freeman and Company, 1995.
4. Sanjay Pahuja, A Practical Approach to Data Structures and Algorithms, New Age
International Publishers, 2008.
Data Structures and Algorithms Laboratory Outline:
Week 1: Introduction to C++, classes, structures, and pointers.
Week 2: Implementation of Array ADT and String ADT. Implementing simple sorting
algorithms.
Week 3: Selection sort, Bubble sort, Insertion sort.
Week 4: Implementing Searching Algorithms: Linear search and Binary search.
Week 5: Implementing Linked Lists: Singly linked list, Doubly linked list, Circular linked list.
Week 6: Stack Implementation: Array-based and Linked List-based.
Week 7: Queue Implementation: Array-based and Linked List-based.
Week 8: Double-ended Queue (Deque) and Priority Queue.
Week 9: Implementing Binary Search Trees.

3
Prepared by Medhanye K
Week 10: Graphs: Implementing Graph Traversal Algorithms.
Week 11: Advanced Sorting Algorithms: Shell sort, Heap sort.
Week 12: Advanced Sorting Algorithms: Quick sort, Merge sort.
Week 13: Advanced Searching Algorithm: Hashing (Open and Closed Hashing).

4
Prepared by Medhanye K

You might also like