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
We take content rights seriously. If you suspect this is your content, claim it here.
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
We take content rights seriously. If you suspect this is your content, claim it here.
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