This course is designed as an entry-level Python programming and data structures course for students who do not have prior programming experience.
The course is composed of two parts. In the first part, an introduction to object-oriented programming is given. Students will learn the Python programming language and will be able to write code to solve basic programming problems. An introduction to asymptotic algorithm analysis will be presented.
The second part focuses on algorithms and data structures. Students will learn the commonly used data structures to represent data, such as arrays, trees, linked lists, hash tables, stacks, and queues. Students will learn basic sorting algorithms and will be able to analyze the space and time complexity of those algorithms.