نوع فایل : powerpoint (ppt) ( قابل ویرایش و آماده پرینت )
تعداد اسلاید : 37 اسلاید
قسمتی از متن powerpoint (ppt) :
روش تقسیم و حل Divide and Conqure
یک نمونه از مسأله را به دو یا چند قسمت کوچکتر تقسیم میکند که معمولا نمونه هایی از مسأله اصلی هستند. اگر جواب مسأله های کوچکتر به راحتی محاسبه شود, می توان جواب نمونه اصلی را با ترکیب این جوابها به دست آورد, در غیر این صورت میتوان آنها را به نمونه های کوچکتر تقسیم کرد .
یک روش بالا به پایین است.
Algorithm DAndC(P)
{ if Small(P) return Solve(P);
else
{ divide P into smaller instances P1,P2,…,Pk, k>=1;
Apply DAndC to each of these subproblems;
return Combine(DAndC(P1),DAndC(P2),…,DAndC(Pk);
}
}
زمان محاسبه تابع DAndC
T(n)= g(n) کوچک باشد n
T(n1)+ T(n2)+…+ T(nk)+f(n) درغیراینصورت
g(n): زمان لازم برای محاسبه مستقیم پاسخ برای ورودی های کوچک
: f(n) زمان لازم برای تقسیم مسأله و ترکیب راه حلها
معمولا:
T(n)= T(1) n=1
aT(n/b)+f(n) n>1
جستجوی دودویی
مسأله: تعیین این که آیا x در آرایه مرتب s با اندازه n وجود دارد یا خیر.
مثال:n=14
-15,-6,0,7,9,23,54,82,101,112,125,131,142,151
x=9
low high mid s[mid]
1 14 7 54
1 6 3 0
4 6 5 9 found
x=-14
low high mid s[mid]
1 14 7 54
1 6 3 0
1 2 1 -15
2 2 2 -6
2 1 not found
الگوریتم binary search
int binsearch(int low,int high)
{ int mid;
if (low > high) return 0;
else
{ mid=[(low+high)/2]; عملگر مبنایی
if (x==s[mid])
return mid;
else if(x < mid)
return binsearch(low,mid-1);
else return binsearch(mid+1,high);
}
}
فهرست مطالب و اسلایدها:
روش تقسیم و حل Divide and Conqure
زمان محاسبه تابع DAndC
جستجوی دودویی
الگوریتم binary search
تحلیل پیچیدگی زمانی الگوریتم binary search
Merge sort
مرتب سازی ادغامی
الگوریتم مرتب سازی ادغامی
الگوریتم ادغام
تحلیل پیچیدگی زمانی الگوریتم mergesort
تحلیل پیچیدگی فضا الگوریتم mergesort
الگوریتم دوم مرتب سازی ادغامی (با صرفه جویی در فضا:n)
الگوریتم ادغام
مرتب سازی سریع Quicksort
الگوریتم Quicksort
روال تقسیم برای زیرآرایه A[pr]
اجرای روال partition
تحلیل پیچیدگی زمان برای quicksort
اثبات درستی رابطه بدست آمده:
تحلیل پیچیدگی حالت میانی الگوریتم quicksort
Quicksort به روش تصادفی
Partition به روش تصادفی
الگوریتم ضرب ماتریس Strassen
ضرب ماتریس 2×2 به روش استراسن
مثال ضرب ماتریس با روش تقسیم و حل
روش تقسیم و حل برای ضرب ماتریس
مثالی از ضرب ماتریس با روش تقسیم و حل
ضرب ماتریس n×n به روش استراسن با تقسیم و حل
مثالی از ضرب ماتریس n×n به روش استراسن با تقسیم و حل
الگوریتم ضرب ماتریس به روش strassen
تحلیل پیچیدگی زمانی الگوریتم استراسن
درباره این سایت