Foundations of Algorithms and Complexity [Hebrew]

Undergraduate course, Ben-Gurion University of the Negev, Department of Industrial Engineering and Management, 2022

Course overview

This introductory course in algorithms and computational complexity covers sorting algorithms, data structures for efficient search, and fundamental graph algorithms. The final part of the course is devoted to the P vs NP question - one of the most profound open problems in computer science.

Students learn to design algorithms using generic paradigms for combinatorial problems and to analyze their time complexity formally.

Course materials

You can download the exercise handout here:
📄 Download Foundations of Algorithms and Complexity (PDF)

Exercise Slides

Below are the exercise slide decks used throughout the semester:

#TopicPDF
01Big-O NotationEX01P.pdf
02Count SortEX02P.pdf
03Merge SortEX03P.pdf
04Binary Search TreesEX04P.pdf
05Binary HeapsEX05P.pdf
06GraphsEX06P.pdf
07Minimum Spanning TreeEX07P.pdf
08Shortest PathEX08P.pdf
09Bipartite MatchingEX09P.pdf
10Maximum FlowEX10P.pdf
11ReductionsEX11P.pdf
12NP-CompletenessEX12P.pdf
13Exam PreparationEX13P.pdf