مرتب سازی شل

پروژه مرتب سازی شل به زبان سی شارپ به همراه سورس کامل مطلب این هفته را با یک الگوریتم مرتب سازی شروع میکنیم.الگوریتم مرتب سازی شل به نام مخترعش ثبت شده است.در مطالب قبلی الگوریتم هایی چون:حبابی ، مرتب سازی سریع،مرتب سازی ادغامی ،جستجو خطی و… مورد برسی قرار دادیم و پروژه ای به همین منظور منتشر کردیم.این بار با الگوریتم دیگر با شما هستیم.شل الگوریتم مرتب سازی است که با توجه به دو مورد زیر صورت عمومی مرتب سازی درجی می‌باشد:مرتب سازی درجی وقتی کارآمد است که ورودی «تقریبا مرتب» باشد.مرتب سازی درجی معمولاً کم بازده‌است چون مقادیر را در هر زمان فقط به اندازه یک موقعیت جابجا می‌کند..خوب بریم روش کار این الگوریتم را ببینیم:

در این الگوریتم از روش مرتب‌سازی درجی استفاده می‌شود. به عبارتی ابتدا لیست را به چند دسته تقسیم می‌کند و هر کدام را جداگانه مرتب می‌کند. برای مثال اگر در ابتدا به ۳ دسته تقسیم کند، هر دسته را جداگانه به روش درجی که گفته شد، مرتب می‌کند. در هر مرحله، تعداد دسته‌ها نصف می‌شود . این عمل را ادامه می‌دهد تا سرانجام، تنها یک دسته شامل کل لیست داشته باشیم.در ادامه شبه کد مبنی بر اجرای صحیح پروژه قرار داده شده است.

کد: F d a c b e  : شروع

c     b   a    f    d    e            : مرحله اول
a     b   c    e    d    f            : مرحله دوم
          a     b   c    d    e    f            : نتیجه

شبه کد الگوریتم

ورودی : آرایه a به طول n :

inc ← round(n/2)
while inc > ۰ do:
    for i = inc.. n − ۲ do:
        temp ← a[i]
        j ← i
        while j ≥ inc and a[j − inc] > temp do:
            a[j] ← a[j − inc]
            j ← j − inc
        a[j] ← temp
    (inc ← round(inc / 2٫۲

 

نقد و بررسی‌ها

هیچ دیدگاهی برای این محصول نوشته نشده است.

اولین کسی باشید که دیدگاهی می نویسد “دانلود پروژه مرتب سازی شل به زبان سی شارپ به همراه سورس کامل”

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.