Jak zaimplementować sortowanie bańki w C ++

Jak zaimplementować sortowanie bańki w C ++
Sortowanie jest powszechnie stosowanym procesem w programowaniu, który służy do sortowania elementów w tablicy lub pojemnikach. Istnieją różne rodzaje algorytmów sortowania, które można zaimplementować w C++. Wśród tych algorytmów, Bańka jest najprostszym ze wszystkiego, co można łatwo zaimplementować w C++.

Ten samouczek to szczegółowy przewodnik do wdrożenia Bańka w c++.

Co to jest bańka i jak go wdrożyć

Bańka jest algorytmem sortowania, który jest zwykle wdrażany przez wielokrotne układanie elementów w porządku. Zamówienie może być rosnące lub zejścia, które zależy od preferencji użytkowników.

Bańka W C ++ działa w następujący sposób:

  • Rozpocznij wyszukiwanie od pierwszego indeksu i porównaj elementy w pierwszym i drugim indeksie.
  • Jeśli pierwszy element indeksu wydaje się większy niż drugi element indeksu, są one wymienione/zamieniane.
  • Następnie przeprowadza wyszukiwanie, porównując drugi element indeksu z trzecim i zamieniając go, jeśli ich zamówienie jest błędne.
  • Ten proces będzie trwał, dopóki wszystkie elementy nie zostaną sortowane w kolejności.

Oto implementacja krok po kroku Bańka w c++.

Załóżmy, że mamy dane wejściowe tablica 8,1,7,2,9 i chcemy sortować tę tablicę za pomocą Bańka. Sortuje elementy w różnych podaniach pokazanych poniżej:

Pierwsza przepustka

  • Sort bańki zaczyna się od pierwszych dwóch elementów i porównuje je, aby zobaczyć, który jest większy.
  • (8 1 7 2 9) -> (1 8 7 2 9), ponieważ 8> 1 algorytm porównuje dwa pierwsze elementy i zamienia je.
  • (1 8 7 2 9) -> (1 7 8 2 9), zamień od 8> 7
  • (1 7 8 2 9) -> (1 7 2 8 9), zamień od 8> 2
  • (1 7 2 8 9 ) -> (1 7 2 8 9 ), ponieważ elementy te zostały umieszczone we właściwej kolejności (9> 8), algorytm nie zamieniłby ich

Druga przepustka

Teraz, podczas drugiej iteracji, powinno wyglądać mniej więcej tak:

  • (1 7 2 8 9) -> (1 7 2 8 9)
  • (1 7 2 8 9) -> (1 2 7 8 9), zamień od 7> 2
  • (1 2 7 8 9) -> (1 2 7 8 9), bez zamiany od 7<8
  • (1 2 7 8 9) -> (1 2 7 8 9), Brak zamiany

Trzecie przepustka

Tablica została posortowana; Jednak nasz algorytm nie jest pewien, czy jest zakończony. Aby go rozpoznać, jest sortowany, algorytm wymaga jednego pełnego przepustki bez swapów.

  • (1 2 7 8 9) -> (1 2 7 8 9)
  • (1 2 7 8 9) -> (1 2 7 8 9)
  • (1 2 7 8 9) -> (1 2 7 8 9)
  • (1 2 7 8 9) -> (1 2 7 8 9)

Jak zaimplementować sortowanie bańki w c++

Poniżej znajduje się kod do wdrożenia Bańka W C ++:

#włączać
za pomocą przestrzeni nazw Std;
void bubbleSort (int myarray [], int num)

int I, J;
dla (i = 0; i < num - 1; i++)
dla (j = 0; j < num - i - 1; j++)
if (myarray [j]> myarray [j + 1])
swap (myarray [j], myarray [j + 1]);

void printArray (int myarray [], int len)

int i;
dla (i = 0; i < len; i++)
Cout << myArray[i] << " ";
Cout << endl;

int main ()

int myarray [] = 8, 1, 7, 2, 9;
int num = sizeof (myarray) / sizeof (myarray [0]);
BubbleSort (myarray, num);
Cout << "Sorted array: \n";
PrintArray (MyArray, Num);
powrót 0;

W powyższym programie C ++ używamy zagnieżdżonych dla pętli Aby zaimplementować sortowanie bańki w c++. Kod usuwa tablicę i sortuje elementy za pomocą BubbleSort funkcjonować. Następnie sortowana tablica jest drukowana za pomocą Cout funkcjonować.

Wniosek

Bańka to prosty algorytm sortowania, który można użyć do sortowania elementów tablicy w kolejności. Wyżej wymienione wytyczne pokazują działanie Bańka w C ++ z prostym programem do łatwego sortowania elementów tablicy.