زمان کنونی: ۰۱ اردیبهشت ۱۴۰۳, ۰۵:۰۵ ب.ظ مهمان گرامی به انجمن مانشت خوش آمدید. برای استفاده از تمامی امکانات انجمن می‌توانید عضو شوید.
گزینه‌های شما (ورودثبت نام)

استفاده از جستجوی دودویی در مرتب سازی درجی امکانپذیر است؟(برای بهبودزمان بدترین حالت)

ارسال:
  

sal_dovomi پرسیده:

استفاده از جستجوی دودویی در مرتب سازی درجی امکانپذیر است؟(برای بهبودزمان بدترین حالت)

میدونیم که تو مرتب سازی درجی از جستجوی خطی استفاده میشه.وبدترین حالت میشه[tex]O(n^{2})[/tex]
حالامیشه به جای جستجوی خطی از جستحوی باینری استفاده کنیم تا زمان بدترین حالت بهبود پیداکنه و بشه[tex]O(nlgn)[/tex]?

۰
ارسال:
  

admin پاسخ داده:

استفاده از جستجوی دودویی در مرتب سازی درجی

جستجوی باینری رو هم می‍شه اضافه کرد اما مرتبه الگوریتم تغییری نمی‍کنه. چرا که به طور متوسط شما باید نصف اعضای لیست رو شیفت بدین.
در صورتی که از لیست پیوندی استفاده کنید پیچیدگی شیفت از بین می‍ره اما باید لیست پیوندی‍ای درست کنید که ایندکس داشته باشه و بتونید به وسط لیست به راحتی مراجعه کنید. فکر می‍کنم این کار باعث پیچیده شدن موضوع بشه در مجموع این‍طور بگم:

۱. در صورتی که از یک آرایه ساده استفاده می‍کنید همچنان پیچیدگی شیفت وجود داره و پیچیدگی الگوریتم همان [tex]O(n^2)[/tex] است.
۲. در صورتی که از لیست پیوندی استفاده می‍کنید نمی‍توانید از جستجوی باینری استفاده کنید! در این حالت پیچیدگی شیفت برابر ۱ است ولی پیچیدگی جستجو از مرتبه n است. بنابراین همچنان پیچیدگی الگوریتم [tex]O(n^2)[/tex] است.
۳. در صورتی که از لیست پیوندی ایندکس دار استفاده کنید. می‍تونید از جستجوی باینری استفاده کنید. در این حالت پیچیدگی شیفت هم برابر ۱ است اما نکته اینه که پیچیدگی به‍روز کردن ایندکس همچنان از مرتبه n است و در نتیجه پیچیدگی کلی الگوریتم باز هم [tex]O(n^2)[/tex] است.

در هر حال این الگوریتم در حالت کلی [tex]O(n^2)[/tex] است و کاریش هم نمی‍شه کرد!!



موضوع‌های مرتبط با این موضوع...
موضوع: نویسنده پاسخ: بازدید: آخرین ارسال
  استفاده از پشته armiii ۰ ۹۲۲ ۰۳ دى ۱۴۰۰ ۱۲:۴۳ ق.ظ
آخرین ارسال: armiii
  کدام زبان برای هوش مصنوعی بهتر است؟ فرق بین زبان های هوش مصنوعی چیست؟ azam2075 ۳ ۵,۴۹۶ ۱۴ مهر ۱۴۰۰ ۰۷:۲۱ ب.ظ
آخرین ارسال: علیصا
  پکیج آموزشی طراحی وب + فارسی سازی وردپرس + سئو Happiness.72 ۶ ۶,۳۱۵ ۱۸ بهمن ۱۳۹۹ ۰۱:۱۵ ب.ظ
آخرین ارسال: saqarmoshtaq
Heart هزینه عشق واقعی چقدر است aatwo ۵ ۵,۳۵۵ ۱۳ بهمن ۱۳۹۹ ۱۰:۱۴ ب.ظ
آخرین ارسال: ghaderZ
  دو سوال در مورد درخت BST(درخت جستجوی دودویی) امیدوار ۳ ۵,۱۴۵ ۱۰ دى ۱۳۹۹ ۱۲:۰۴ ق.ظ
آخرین ارسال: marzi.pnh
  زمان جستجوی درخت fateme.sm ۰ ۱,۵۸۳ ۰۶ دى ۱۳۹۹ ۱۰:۴۱ ب.ظ
آخرین ارسال: fateme.sm
  مرتب سازی سریع تصادفی چیست؟ Xzrix ۰ ۱,۳۸۶ ۱۴ آذر ۱۳۹۹ ۰۷:۲۲ ب.ظ
آخرین ارسال: Xzrix
  شبیه سازی مقاله Q-Learning kadoos ۱۶ ۱۵,۲۹۶ ۲۵ آبان ۱۳۹۹ ۰۹:۱۹ ب.ظ
آخرین ارسال: nasim.nasim۱
  چجوری بفهمیم سرور hp اورجینال است یا خیر!؟ azade1992 ۱ ۲,۲۳۷ ۰۳ مهر ۱۳۹۹ ۱۰:۵۹ ق.ظ
آخرین ارسال: diiyan
  کدام زبان برنامه‌نویسی بهترین انتخاب است؟ elecomco ۲ ۲,۷۶۵ ۱۰ شهریور ۱۳۹۹ ۰۵:۱۶ ب.ظ
آخرین ارسال: kilookiloo

پرش به انجمن:

Can I see some ID?

به خاطر سپاری رمز Cancel

Feeling left out?


نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close

رمزت رو فراموش کردی؟

Feeling left out?


نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. close