The Hebrew University Logo
Syllabus INTRODUCTION TO COMPUTER SCIENCE - 67101
עברית
Print
 
close window close
PDF version
Last update 14-10-2020
HU Credits: 7

Degree/Cycle: 1st degree (Bachelor)

Responsible Department: Computer Sciences

Semester: 1st and/or 2nd Semester

Teaching Languages: Hebrew

Campus: E. Safra

Course/Module Coordinator: Prof Aviv Zohar and Prof Jeffrey Rosenschein

Coordinator Email: avivz@cs.huji.ac.il

Coordinator Office Hours: see on the course website

Teaching Staff:
Prof Aviv Zohar,
Prof Jeff Rosenschein,
Dr. Arie Schlesinger,
Mr. Matan Levy,
Mr. Amir Guy,
Mr. Idan Refaeli,
Ms. Neta Kenneth,
Ms. Ayelet Mizrahi,
Ms. Liel Maruani,
Mr. Ziv Benaharon,
Ms. Adi Cogan

Course/Module description:
Familiarity with Computer Science: Programming Python language and recognition of selected topics in computer science.

Course/Module aims:
Design and realization of selected algorithms from computer science in the Python language.

Learning outcomes - On successful completion of this module, students should be able to:
Design and realization of selected algorithms from computer science in the Python language. Write complete programs in Python.

Attendance requirements(%):
There will be a shield grade awarded for presence in class, recitation, and labs

Teaching arrangement and method of instruction: Pre-recorded lectures, Synchronous lectures, recitations and labs

Course/Module Content:
1. functions, expressions, variables, types ,casting

2. Conditionals, Strings, parameter passing and return values

3. Loops (for, while), lists, slicing, debugging basics, nested lists/loops

4. Aliasing, scope, mutability, tuples, collections (set, dictionary), comprehension

5. Numeric algorithms, Runtime analysis (exponents, finding roots via binary search, sorting and more)

6. Recursion, run-time analysis of recursive functions O(nlogn sorting)

7. Object oriented programming

8. LinkedLists, trees.

9. Graphs, Exceptions.

10. Backtracking

11. 2nd order functions, closure, decorators

12. Event-driven programming, GUI

13. Generators, iterators, unit testing, assert

14. Advanced topics: Networking & Cloud deployment, Artificial intelligence: Chess playing. Turing Machines, Halting and Goedel.

Required Reading:
NA

Additional Reading Material:
NA

Course/Module evaluation:
End of year written/oral examination 50 %
Presentation 0 %
Participation in Tutorials 0 %
Project work 0 %
Assignments 50 %
Reports 0 %
Research project 0 %
Quizzes 0 %
Other 0 %

Additional information:
NA
 
Students needing academic accommodations based on a disability should contact the Center for Diagnosis and Support of Students with Learning Disabilities, or the Office for Students with Disabilities, as early as possible, to discuss and coordinate accommodations, based on relevant documentation.
For further information, please visit the site of the Dean of Students Office.
Print