CSI2110*[E] Data Structures And Algorithms 20241
Course Description
CSI2110 - DATA STRUCTURES
This course provides an introduction to data structures and algorithms, including their design, analysis, and implementation.
Why Learning Data structures ?
To become a Computer Scientist and not just a programmer. To learn how to think and not just write code
"Data structure and algorithms are two of the most important aspects of computer science. Data structures allow us to organize and store data, while algorithms allow us to process that data in a meaningful way. Learning data structure and algorithms will help you become a better programmer. You will be able to write code that is more efficient and more reliable. You will also be able to solve problems more quickly and more effectively "
COURSE OBJECTIVES
Throughout the modules of this course:
• Students will learn in a systematic way the most commonly used data structures with emphasis on their abstract properties.
• Understand the typical algorithms that operate on each kind of data structure and learn how to analyze their performance.
• Be able to compare different data structures for solving the same problem, and choose the best.
COURSE OUTLINE
Module 1. Algorithm Analysis
Module 2. Stacks, Queues, Dequeues
Module 3. Lists
Module 4. Priority Queues
Module 5. Heaps
Module 6. Trees
Module 7. Maps & Binary Search Trees
Module 8. Search Trees
Module 9. Hash Tables
Module 10. Graph Algorithms.
Module 11. Sorting Algorithms