مرتب سازي سريع  

مرجع دانلود پاورپوینت های درسی

دانش امروز، فناوری فرداست. ادوارد تِلِر

اشتراک در خبرنامه

جهت عضویت در خبرنامه لطفا ایمیل خود را ثبت نمائید

Captcha

مرتب سازي سريع


مرتب سازي سريع

حجم فایل : 496.8 KB
نوع فایل : پاور پوینت
تعداد اسلاید ها : 45
بنام خدا 1 مرتب سازي سريع Quicksort ساختمان داده ها و الگوريتمها 2 Quicksort Hoare در سال 1962 پيشنهاد كرده است
از روش تقسيم و حل (Divide & Conquer) استفاده مي كند
آرايه را به صورت “در جا” (In Place)مرتب مي كند
شبيه مرتب سازي درجي(Insertion Sort) است.
برخلاف (Merge Sort ) به حافظه اضافي نياز ندارد.
پياده سازي هاي سريعي كه براي آن ارائه شده، باعث بكارگيري وسيع آن در عمل شده است. 3 تقسيم و حل تقسيم:يك عضو مثل x از آرايه را انتخاب كرده و آرايه را طوري به دو بخش طوري تقسيم مي كنيم كه يك بخش آن از x كوچكتر و بخش ديگر از x بزرگتر باشند. حل: به صورت بازگشتي هر كدام از اين دو بخش را مرتب مي كنيم
تركيب: كارخاصي لازم نيست!
نكته: هزينه عمل تقسيم خطي است Θ(n)
4 تقسيم PARTITION(A, p, q)// A[p. . q]
x←A[p] // pivot= A[p]
i←p
for j←p+ 1 to q
do if A[j] ≤x
then i←i+ 1
swap A[i] ↔A[j]
swap A[p] ↔A[i] // final place of pivot!
return i 5 مثال 6 مثال 7 مثال 8 مثال 9 مثال 10 مثال 11 مثال 12 مثال 13 مثال 14 مثال 15 شبه كد الگوريتم مرتب سازي QUICKSORT(A, p, r)
if p< r
then q←PARTITION(A, p, r)
QUICKSORT(A, p, q–1)
QUICKSORT(A, q+1, r)

Initial call:QUICKSORT(A, 1, n)
16 آناليز الگوريتم فرض كنيد تمام اعضاي آرايه غير تكراري هستند.
در عمل معمولا روشهاي مناسبتري براي تقسيم آرايه هايي كه اعضاي تكراري دارند، استفاده مي شود
فرض كنيد T(n) هزينه مرتب سازي آرايه اي به طول n با استفاده ازاين الگوريتم در بدترين حالت باشد.
معمولا بهترين حالت الگوريتمها را در نظر نمي گيريم اما براي مرتب سازي سريع اين حالت را نيز بررسي مي كنيم.
17 بدترين حالات quicksort آرايه از قبل مرتب شده باشد.
تقسيم حول مقدار مينيمم يا ماكزيمم صورت گيرد.
يكي از دو بخش بدست آمده از تقسيم، هيچ عضوي نداشته باشد.
T(n) = T(0) + T(n-1) + Θ(n)
= Θ(1) + T(n -1) + Θ(n)
= T(n-1) + Θ(n)  n + n-1+ …+1
= Θ(n2) 18 درخت هزينه بدترين حالت 19 درخت هزينه بدترين حالت 20 درخت هزينه بدترين حالت 21 درخت هزينه بدترين حالت 22 درخت هزينه بدترين حالت 23 درخت هزينه بدترين حالت 24 درخت هزينه بدترين حالت 25 بهترين حالت در بهترين حالت، دو بخش تقسيم شده تقريبا هم اندازه هستند و اندازه مساله در هر بار تقسيم نصف مي شود:
T(n) = 2T(n/2) + Θ(n)  Θ(n log n) (mergesort)

سوال: اگر تقسيم طوري صورت بگيرد كه 90% اعضاي آرايه در يك بخش و %10 در بخش ديگر قرار بگيرند، هزينه الگوريم چگونه خواهد بود ؟
T(n) = T(n/10) + T(9n/10)+ Θ(n)
26 10% 90% 27 10% 90% 28 10% 90% 29 10% 90% 30 10% 90% 31 1...

  انتشار : ۹ اسفند ۱۳۹۸               تعداد بازدید : 183

دیدگاه های کاربران (0)

http://kia-ir.ir

لطفا برای ارتباط با پشتیبانی از قسمت تماس با ما و ایمیل استفاده نمایید

فروشگاه پاورپوینت فایل اوکی © 2024-1403

فید خبر خوان    نقشه سایت    تماس با ما