Sortowanie jest metodą, za pomocą której zamawiamy elementy w sekwencji. Sort sortowania jest jednym z algorytmów sortowania, ale ten algorytm jest nieco inny niż inne algorytmy. Bucket, jak sama nazwa wskazuje, zawiera coś w osobnej przestrzeni, takiej jak pojemnik. Algorytm ten umieszcza elementy w wiadrze według stanu. Elementy są podzielone na różne wiadra, a sortowanie jest wykonywane na każdym wiadrze. Możemy zdecydować, który algorytm służy do sortowania wiader. Pozostałe nazwy dla sortowania wiadra to sort bin i sortowanie radix. Grupowanie elementów, które mają być przechowywane w wiadrach, odbywa się jednolicie. Sort sortowania jest algorytmem, który jest dobry z małymi tablicami. Ale jeśli chodzi o sortowanie większych tablic, algorytm ten nie jest preferowany, ponieważ złożoność wzrasta, a wydajność maleje. Algorytm ten jest stosowany głównie na wartości zmiennoprzecinkowych, w których musimy jednolite grupowanie elementów tablicy.
Zalety:
Korzystanie z sortowania wiadra w programowaniu ma kilka korzyści:
Sortowanie wiadra jest preferowane, gdy musimy rozpowszechniać dane i gdy masz do czynienia z wartościami zmiennoprzecinkowymi.
Podejście do rozproszenia i zbierania
Sort wiadra działa na podejściu do rozproszenia i zbierania. Najpierw rozprasza elementy w wiadrze równomiernie. Gdy zostaną posortowane w wiadrze, są zgromadzone w jednym miejscu i sortuje tablicę. Ta technika oszczędza nas od porównania każdego elementu tablicy ze sobą, co zwiększa złożoność i sprawia, że proces kompilacji jest powolny.
Wiadro sortuje tablice, dzieląc elementy tablicy na wiadra. Każde wiadro jest następnie przechowywane w osobnej lokalizacji. Proces przechowywania można wykonać za pomocą różnych technik lub algorytmów lub poprzez rekurencyjne zastosowanie algorytmu sortowania wiadra.
Przykład:
Teraz wyjaśniamy działanie sortowania wiadra za pomocą przykładu. Do sortowania i dystrybucji tablic stosuje się różne metody.
#włączaćPo pierwsze, obejmują trzy ważne biblioteki - i i . Biblioteka zawiera wszystkie metody sortowania i wyszukiwania. Ponieważ sortujemy tablicę wartości zmiennoprzecinkowych, uwzględnienie tej biblioteki w kodzie jest obowiązkowe. Następnie uwzględnij bibliotekę, która zawiera wszystkie wbudowane metody, których potrzebujemy, aby wprowadzić i wysyłać dane. Trzecia i ostatnia biblioteka to . Wektor jest jak tablica, ale zawiera zmienny rozmiar. Wektory mogą zmienić rozmiar tablicy w czasie wykonywania; To jest ich specjalność. Ponieważ używamy wektorów w naszym kodzie, ważne jest, aby zaimportować bibliotekę zawierającą w nim wektor.
Po zaimportowaniu tych bibliotek użyj „przestrzeni nazw STD”. Ponadto zdefiniuj metodę o nazwie „BucketSort” powracania nieważnego. Przekaż w nim dwa parametry. Pierwszym parametrem jest tablica typu float „array_0”, która jest sortowana za pomocą sortowania wiadra. Drugi parametr to zmienna typu liczb całkowita „N”. Następnie zdefiniuj tablicę wektorów typu danych zmiennoprzecinkowych. Tablica to „B” o wielkości „N”. Używana jest tablica typu wektorowego, ponieważ rozmiar tablicy jest nieznany. Teraz dodaj elementy w różnych wiadrach za pomocą pętli „for”. Dokonaj iteratora „i”, a następnie ustaw warunek, aby zapętlił, aż iterator nie osiągnie liczby elementów w tablicy. Atrybut „N” pokazuje nieznany rozmiar tablicy. Obserwujemy, jak uzyskać rozmiar tablicy w metodzie Main (). Zwiększyć iterator „i”. Zdefiniuj zmienną w pętli „dla”, której rozmiar „n” jest mnożony przez wartości tablicy przechowywane w iteratorze.
W tablicy wektorowej zastosuj funkcję push_back (), aby popchnąć ten element tablicy. Po wciśnięciu tablicy w wiadrach sortuje te wiadra za pomocą innej pętli „dla”. Zainicjuj iterator pętli i iteruj, aż osiągnie rozmiar i utrzyma zwiększenie pętli. Sortuj tablicę w treści „for”, wywołując metodę sort () biblioteki algorytmu. Przekaż dwa parametry wewnątrz tej funkcji. Pierwszy argument pokazuje początkowy wskaźnik tablicy, a drugi argument pokazuje indeks końcowy tablicy. Funkcja początkowa () rozpoczyna sortowanie, a funkcja end () zatrzymuje się w ostatnim indeksie. Zadeklaruj zmienną poza ciałem „for”, aby uzyskać indeks. Użyj zagnieżdżonej pętli „for”, aby połączyć elementy tablicy po sortowaniu w osobnych wiadrach.
Ponadto wywołaj metodę Main (). Tutaj zadeklaruj pływającą tablicę „ARR” i zainicjuj ją. Następnie zdefiniuj liczbę całkowitą „N”, aby uzyskać elementy tablicy. Funkcja sizeof (ARR) ma rozmiar tablicy w bajtach. Mnoży rozmiar z 10, a metoda sizeof (ARR [0]) ma rozmiar tylko jednego elementu. Dzieląc oba, możemy zdobyć całkowite elementy tablicy. Teraz przywołaj metodę BucketSort (). Ta funkcja sortuje tablicę, stosując algorytm sortowania wiadra. Reprezentuj komunikat „posortowany jest” na konsoli za pomocą polecenia „Cout”. Aby wyświetlić posortowaną tablicę, użyj pętli „for” i ustaw warunek na liczbę elementów tablicy. Użyj „cout” w ciele „for”, aby pokazać zaktualizowaną tablicę.
Wniosek
Omówiliśmy działanie i wdrożenie sortowania wiadra w c++. Ponieważ nazwa jest oczywista, dzieli tablicę i przechowuje je w wiadrze. Po sortowaniu tablicy wszystkie wiadra są łączone w sekwencji. Ten sortowanie wiadra jest preferowane, gdy radzimy sobie z wartościami zmiennoprzecinkowymi, ponieważ dzieli wiadra na podstawie różnych warunków i służy do równomiernego rozpowszechniania danych. Artykuł zawiera wszystkie informacje, które powinieneś znać przed wdrożeniem sortowania wiadra. Do sortowania tablicy stosuje się różne techniki sortowania i algorytmy; Wszystkie metody mają zalety i wady. Ta metoda ma punkt plus, że jest szybka i sortuje tablicę z minimalnym porównanie. Ale kiedy mamy dużą tablicę, sortowanie wiadra nie jest dobrą opcją. Artykuł podsumowano tutaj z krótkim przeglądem sortowania wiadra.