Download as pdf or txt
Download as pdf or txt
You are on page 1of 4

‫مركز الجودة والتطوير األكاديمي‬

Course outline

Prerequisite Essential Information


Basic knowledge of Python programming is recommended Department Computer Engineering
Major Bachelor of Data Science and AI
Following Courses
Course Title Data Structures
Course Number DSAI 3312
Textbook
- Data Structures and Algorithms in Python-Wiley Instructor Details
Other books Name Abdelkarim Aiman Abusamra
- Python for Everybody - Charles R. Severance
Email aabusamra@ucas.edu.ps
‫ تراكيب البيانات والخوارزميات‬-
Office Hours
Description Other Details
Explore the fundamental building blocks of computer science and M.: 0597234282 (whatsapp and phone)
software development with our Python Data Structures and
Algorithms course. In today's data-driven world, efficient data
organization and manipulation are key skills for any programmer. Recommended Readings
This course will equip you with a strong foundation in data Textbook and Presentations
structures and algorithms, empowering you to write efficient,
scalable, and error-free Python code. Labs code in class
References
• Online references on Classroom

1
‫مركز الجودة والتطوير األكاديمي‬
Course outline

Teaching Strategy Evaluation Method Weight Objectives Outcomes

Attendance & 10
• This course aims to equip you
• Traditional Method Activity
Quizzes & 15 with a strong foundation in
• Coding in Class • By the end of this course, you'll be
Assignments Python programming, efficient
• Task -based Course Project 20 well-versed in Python's data
data manipulation skills using
learning structures and equipped with the
built-in data structures,
• Project-Based algorithmic problem-solving skills
Midterm 20 problem-solving abilities
Learning necessary to tackle a wide range of
through algorithmic thinking,
• Problem Based programming challenges. Whether
Final Exam 35 and the capacity to apply these
Learning you're a beginner or an
skills to real-world scenarios.
• Case study experienced programmer looking
By mastering these objectives,
to deepen your knowledge, this
you'll become a proficient
course will sharpen your Python
Python programmer capable of
programming skills and set you on
tackling diverse software
the path to becoming a proficient
development, data analysis,
data scientist or software engineer.
and algorithmic challenges
with confidence and expertise.

2
‫مركز الجودة والتطوير األكاديمي‬
Course outline

Topics Week#
1. Introduction to data structures
- Abstract data type and Data Structure 1

2. Time and Space Complexity


- Lab: apply on code, instructions time and space complexity 2

3. Python Object Oriented


- Lab: review basic python concepts and Object Oriented
3
- Lab: Python built in data structures (list, tuple, set, dictionary)

4. Arrays, static arrays, dynamic arrays, 2D arrays


- Lab: Create array data structure and apply operations 4

5. Linked Lists
- Lab: Linked list types, Singly, Doubly, and Circular, and its operations 5

6. Stacks & Queues


- Lab: Creating stack and queue in python 6

Midterm
7

7. Recursion, Linear Search Algorithm, Binary Search Algorithm


- Lab: Apply recursion, linear and binary search algorithms by examples 8

3
‫مركز الجودة والتطوير األكاديمي‬
Course outline

8. Sorting Algorithms
- Lab: Selection sort, Bubble sort 9

9. Tree Data Structure


- Lab: Binary Trees, AVL Trees, Breadth-First Search, Depth-First Search 10

10. Graph Data Structure


- Lab: Graph search algorithm 11

11. Hash Tables Data Structure


- Lab: Hash table example 12

Review and Discussion


13

Final Exam
14

You might also like