Obsah:

Ako vytvoríte bublinové triedenie v prepojenom zozname v C++?
Ako vytvoríte bublinové triedenie v prepojenom zozname v C++?

Video: Ako vytvoríte bublinové triedenie v prepojenom zozname v C++?

Video: Ako vytvoríte bublinové triedenie v prepojenom zozname v C++?
Video: Section 6 2024, Apríl
Anonim

Ak chcete vykonať triedenie podľa bublín, postupujte podľa nasledujúcich krokov:

  1. Krok 1: Skontrolujte, či sú údaje na 2 susedných uzloch vo vzostupnom poradí alebo nie. Ak nie, vymeňte údaje 2 susedných uzlov.
  2. Krok 2: Na konci prechodu 1 bude najväčší prvok na konci zoznamu.
  3. Krok 3: Slučku ukončíme, keď sú spustené všetky prvky.

Ako týmto spôsobom vytvoríte triedenie bublín v prepojenom zozname v C++?

Ak chcete vykonať triedenie podľa bublín, postupujte podľa nasledujúcich krokov:

  1. Krok 1: Skontrolujte, či sú údaje na 2 susedných uzloch vo vzostupnom poradí alebo nie. Ak nie, vymeňte údaje 2 susedných uzlov.
  2. Krok 2: Na konci prechodu 1 bude najväčší prvok na konci zoznamu.
  3. Krok 3: Slučku ukončíme, keď sú spustené všetky prvky.

Podobne, čo je bubble sort C++? Bublinové triedenie . V bublinové triedenie , ako sú prvky triedené oni postupne" bublina " (alebo stúpať) na ich správne miesto v poli, napr bubliny stúpa v pohári sódy. The bublinové triedenie opakovane porovnáva susedné prvky poľa. Prvý a druhý prvok sa porovnajú a vymenia, ak nie sú v poriadku.

Po druhé, ako triedite údaje v prepojenom zozname?

Algoritmus

  1. Vytvorte triedu Node, ktorá má dva atribúty: data a next.
  2. Vytvorte ďalšiu triedu SortList, ktorá má dva atribúty: hlavu a chvost.
  3. addNode() pridá nový uzol do zoznamu:
  4. sortList() zoradí uzly zoznamu vo vzostupnom poradí.
  5. display() zobrazí uzly prítomné v zozname:

Aký je najlepší algoritmus triedenia pre prepojený zoznam?

Zlúčiť triedenie sa často uprednostňuje na triedenie prepojeného zoznamu. Pomalý výkon náhodného prístupu prepojeného zoznamu spôsobuje, že niektoré ďalšie algoritmy (ako napr rýchle triedenie ) fungujú zle a iné (ako napr hepsort ) úplne nemožné. Nech head je prvý uzol prepojeného zoznamu, ktorý sa má zoradiť, a headRef je ukazovateľ na hlavičku.