Design & Analysis
of Algorithms
تصميم وتحليل
الخوارزميات
The logic of computation. Master complexity analysis, dynamic programming, graph theory, and NP-completeness to solve the unsolvable. منطق الحوسبة. أتقن تحليل التعقيد، البرمجة الديناميكية، نظرية الرسوم البيانية، و NP-completeness لحل ما لا يمكن حله.
The Learning Path مسار التعلم
Introduction مقدمة (Introduction)
Algorithm role, efficiency, and analyzing complexity (Big O). دور الخوارزمية، الكفاءة، وتحليل التعقيد (Big O).
Divide & Conquer فرق تسد (Divide & Conquer)
Merge Sort, Quick Sort, and recurrence relations. Merge Sort, Quick Sort, والعلاقات التكرارية.
Recurrences التكرارات (Recurrences)
Master Theorem, Substitution Method, and Recursion Trees. نظرية السيد (Master Theorem)، طريقة التعويض، وأشجار العودية.
Sorting الترتيب (Sorting)
Heapsort, linear time sorting, and order statistics. Heapsort, الترتيب الخطي، وإحصائيات الترتيب.
Data Structures هياكل البيانات (Data Structures)
Binary Search Trees, Red-Black Trees, and augmentation. أشجار البحث الثنائية (BST)، أشجار Red-Black، والزيادة (Augmentation).
Hashing التجزئة (Hashing)
Hash functions, collision resolution, and universal hashing. دوال التجزئة (Hash functions)، حل التضارب، والتجزئة الشاملة.
Dynamic Prog I البرمجة الديناميكية I
Fundamentals of DP, memoization vs tabulation. أساسيات الـ DP، الـ Memoization مقابل الـ Tabulation.
Dynamic Prog II البرمجة الديناميكية II
Advanced DP: LCS, Matrix Chain Multiplication, and Knapsack. الـ DP المتقدم: LCS, ضرب سلسلة المصفوفات، وحقيبة الظهر (Knapsack).
Greedy Algos الخوارزميات الجشعة (Greedy)
Activity Selection, Huffman Coding, and Matroids. اختيار النشاط، ترميز هوفمان (Huffman)، والـ Matroids.
Graphs I الرسوم البيانية I
Representations, BFS, DFS, and Topological Sort. التمثيلات، BFS, DFS, والفرز الطوبولوجي.
Graphs II الرسوم البيانية II
MST (Prim/Kruskal) and Shortest Paths (Dijkstra/Bellman-Ford). الـ MST (Prim/Kruskal) وأقصر المسارات (Dijkstra/Bellman-Ford).
NP-Complete الـ NP-Complete
P vs NP, Reductions, and proving hardness. P مقابل NP، الاختزال (Reductions)، وإثبات الصعوبة.
Approximation التقريب (Approximation)
Vertex Cover, TSP, and randomized algorithms. Vertex Cover, TSP, والخوارزميات العشوائية.
The Gauntlet التحدي النهائي
Midterm Exam الاختبار النصفي
Complexity, Sorting, Hashing, and Data Structures. التعقيد، الترتيب، التجزئة، وهياكل البيانات.
Final Exam الاختبار النهائي
Dynamic Programming, Greedy, Graphs, and NP. البرمجة الديناميكية، الخوارزميات الجشعة، الرسوم البيانية، والـ NP.