3. Jens Martensson
المقرر لهذا المعتمدة الساعات
:
المقرر لهذا األساسية األهداف
:
•
للخوارزميات األساسية المفاهيم على التعرف
• Students will understand the basic concepts of algorithms.
•
وتحليلها الخوازميات تصميم على المقدرة اكتساب
• Students will gain the ability to design and analysis of algorithms.
•
الخوارزميات باستخدام البرمجة مهارات تحسين
• Students will enhance the skills of algorithm programming.
3
1 2
3 4
5 6
•
3
معتمدة ساعات
4. Jens Martensson
الموضوعات
Content
• Basic concept: Algorithm characteristics, algorithm instances,
algorithm representation, pseudo code, and etc.
• Algorithm problem solving.
• Overview of important problems: Sorting, Searching, string
matching, geometric problems, numerical problems, and etc.
• Examples for several classic algorithms.
• Mathematical foundation: growth of functions, recurrences.
• Asymptotic notation for characterizing algorithm complexity.
• Basic techniques for complexity analysis of various algorithm
patterns.
• Algorithm design techniques: Divide and conquer, Greedy
algorithms, dynamic programming, graph algorithms.
• Introduction to NP-completeness.
4
1 2
3 4
5 6
5. Jens Martensson
المنهجية والكتب المراجع
References
• Anany Levitin, “Introduction to Design & Analysis Of
Algorithms,” Addision Wesley, 2003.
• Gilles Brassard and Paul Bratkey, “Fundamental of Algorithms”
Prentice Hall, Pearson Education Inc. 1996
5
هي المقرر لهذا المرجعية الكتب
:
9. Jens Martensson
الخوارزمية
Algorithms
• Informally, an Algorithm is any well-defined
computational procedure that takes some values, or a
set of values as, Input and procedures some values, or
a set of values as, output.
•
الخوارزمية
:
عبارة
عن
اجراء
رياضي
مسبق
يأخذ
قيمة
أو
مجموعة
من
القيم
كمدخالت
ويقوم
بإخراج
قيمة
أو
مجموعة
من
القيم
وجعلها
كمخرجات
«
نتائج
»
.
9
1 2
3 4
5 6
Output
Finite, Ordered list
of Steps
Input
10. Jens Martensson
الخوارزمية
Algorithms
• An Algorithm is thus sequences of
computational steps that transform the
input into output.
•
الخوارزمية
:
عبارة
عن
مجموعة
متتالية
من
الخطوات
الرياضية
لتحويل
المدخالت
إلى
مخرجا
ت
10
1 2
3 4
5 6
29. Jens Martensson
مـثال
Example
Algorithm add(A,B,m,n) :
Input: a positive integer m,n and two dimensional arrays of numbers A and B each of which has its
rows and indexed form 1 to m and column form 1 to n.
Output: a two dimensional array of number c, containing addition of A and B.
1. For i 1 to m
2. For j 1 to n
3. c[i,j] A[i,j] + B [i,j]
4. End for
5. End for
6. Return Array C
تعقيدات
الخزن
:
Sadd(m,n)=mn+2
تعقيدات
الزمن
:
1. … m+1
2. …
3. … ms m(n+1+n) m(2n+1)
4. …
5. …
6. … mn T add (m,n)=3mn+2m+1
29
1 2
3 4
5 6