General Information


Location and Hours

Please check the course schedule.


Instructors:|taif#taiF somA .forP,|rimahsr#rimahS noR .forP
moc.liamg|reldeirf.rihpo#reldeirF rihpO,|ztivoknaylat#hcivoknaY laT

Feel free to coordinate reception hours via email.


Data Structures, Linear Algebra, Calculus, Discrete Mathematics.

Grade and Homework Assignments

There will be 6 homework assignments. The average of the all 6 assignments will be worth 12 points of your final grade. The final exam will be worth 90 points (i.e., the HW may give 2 bonus points), though you must pass the exam to pass the course.

The submission of homework assignments is not compulsory; for each assignment you don't submit, you will get a 0. All the HW grades (whether you submitted or not) will be taken into consideration when calculating your grade. (Therefore, if you choose not to submit any assignment, your final grade will be at most 90.) In any case, we strongly advise against not submitting, as our experience shows that students who don't try solving the assignments tend to do badly in the exam.

Text Books

Most of the course follows the following two books.

  • Introduction to Algorithms, by T. Cormen, C. Leiserson, R. Rivest, and C. Stein. Third edition, MIT Press, 2009.
  • Algorithm Design, by J. Kleinberg and E. Tardos. Pearson/Addison Wesley, 2006.

Additional reading:

  • Graph Algorithms, by S. Even. Computer Science Press, 1979.
  • Data Structures and Network Algorithms, by R. E. Tarjan. SIAM, 1983.
  • The Design and Analysis of Algorithms, by D. Kozen, 1992.

Course Syllabus

Graph Algorithms: Breadth first search, Depth first search, Topological sort, Strongly connected components, Biconnected components, Minimum spanning trees (Kruskal, Prim), Shortest paths (Dijkstra, Bellman-Ford), Dynamic programming, All-pairs shortest paths (Floyd-Warshall, Johnson), Linear programming, Flow algorithms (Ford-Fulkerson, Edmonds-Karp, Dinic).

Some extra material


Note that the definitions used in other courses and websites may differ from the definitions given in the course. Please keep this in mind when browsing outside of the course website.


1. להכנס למערכת השעות האוניברסיטאית בקישור:
2. לחפש את הקורס ותחת הקבוצה המתאימה ללחוץ על הקישור "רשימת תפוצה".
3. ייפתח חלון חדש שם צריך לבחור את האפשרות האמצעית (join/leave list).
4. בחלון הבא יש למלא אימייל ושם וללחוץ על הכפתור השמאלי - join list. ניתן להתעלם מכל מה שמתחת.
5. לאחר מכן יישלח למייל אישור ביצוע הפעולה. יש ללחוץ על הקישור.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License