تصویری: آیا الگوریتم مرتب سازی سطلی درست است؟
2024 نویسنده: Lynn Donovan | [email protected]. آخرین اصلاح شده: 2023-12-15 23:46
نه، این یک ورودی نیست محل مرتب سازی الگوریتم . کل ایده همین ورودی است مرتب می کند خود را در حالی که به آنها منتقل می شوند سطل ها . در بدترین حالت خوب (مقادیر ترتیبی، اما بدون تکرار) فضای اضافی مورد نیاز به اندازه آرایه اصلی است.
به این ترتیب، کدام الگوریتم های مرتب سازی وجود دارد؟
به عنوان مثالی دیگر، بسیاری از الگوریتمهای مرتبسازی آرایهها را به ترتیب مرتبسازی شده در جای خود بازآرایی میکنند، از جمله: مرتب سازی حبابی ، مرتب سازی شانه ای، مرتب سازی انتخابی، مرتب سازی درج ، دستهبندی، و مرتبسازی پوسته. این الگوریتم ها فقط به چند اشاره گر نیاز دارند، بنابراین پیچیدگی فضایی آنها O(log n) است. Quicksort در محل روی داده هایی که قرار است مرتب شوند عمل می کند.
پس از آن، سوال این است که الگوریتم مرتب سازی سطلی چگونه کار می کند؟ مرتب سازی سطلی ، یا مرتب سازی بن ، هست یک الگوریتم مرتب سازی که آثار با توزیع عناصر یک آرایه به تعدادی از سطل ها . هر یک سطل پس از آن است مرتب شده است به صورت جداگانه، یا با استفاده از یک متفاوت الگوریتم مرتب سازی ، یا با اعمال بازگشتی الگوریتم مرتب سازی سطلی . تنظیم یک آرایه از ابتدا خالی " سطل ها ".
بر این اساس، چگونه یک الگوریتم مرتب سازی سطلی را پیاده سازی می کنید؟
- فرض کنید، آرایه ورودی این است: یک آرایه به اندازه 10 ایجاد کنید.
- عناصر را در سطل های آرایه قرار دهید. عناصر با توجه به محدوده سطل وارد می شوند.
- عناصر هر سطل با استفاده از هر یک از الگوریتم های مرتب سازی پایدار مرتب می شوند.
- عناصر هر سطل جمع آوری می شوند.
مرتب سازی سطلی کجا استفاده می شود؟
مرتب سازی سطلی عمدتاً زمانی مفید است که ورودی به طور یکنواخت در یک محدوده توزیع شود. برای مثال مشکل زیر را در نظر بگیرید. مرتب سازی مجموعه بزرگی از اعداد ممیز شناور که در محدوده 0.0 تا 1.0 قرار دارند و به طور یکنواخت در سراسر محدوده توزیع شده اند.
توصیه شده:
کدام الگوریتم مرتب سازی بهترین پیچیدگی مجانبی را دارد؟
مرتب سازی پشته
کجا از الگوریتم های مرتب سازی استفاده می شود؟
بررسی مختصری از مرتب سازی برنامه ها. محاسبات تجاری جستجو برای اطلاعات تحقیق در عملیات. شبیه سازی رویداد محور محاسبات عددی جستجوی ترکیبی الگوریتم Prim و الگوریتم Dijkstra الگوریتم های کلاسیکی هستند که نمودارها را پردازش می کنند
چگونه یک مرتب سازی سطلی انجام می دهید؟
مرتبسازی سطلی بهصورت زیر عمل میکند: آرایهای از «سطلها» در ابتدا خالی را تنظیم کنید. Scatter: روی آرایه اصلی بروید و هر شی را در سطل خود قرار دهید. هر سطل غیر خالی را مرتب کنید. جمع آوری کنید: به ترتیب از سطل ها بازدید کنید و همه عناصر را به آرایه اصلی برگردانید
کدام الگوریتم مرتب سازی در بدترین حالت بهترین است؟
الگوریتم های مرتب سازی الگوریتم ساختار داده پیچیدگی زمانی: بدترین مرتب سازی سریع آرایه O(n2) ادغام مرتب سازی آرایه O(n log(n)) مرتب سازی پشته ای آرایه O(n log(n)) مرتب سازی صاف آرایه O(n log(n))
پیچیدگی الگوریتم مرتب سازی پشته چیست؟
مرتب سازی پشته یک الگوریتم در محل است. TimeComplexity: پیچیدگی زمانی heapify O(Logn) است. پیچیدگی زمانی createAndBuildHeap() O(n) و پیچیدگی کلی زمان Heap Sort O(nLogn) است