Informatyka · Algorytmy i złożoność

Jak ustawić wyniki od najmniejszego?

Wyniki biegu przyszły w przypadkowej kolejności. Możesz zamieniać sąsiadów albo podzielić listę na mniejsze części i scalić już uporządkowane fragmenty. Zobacz różnicę w pracy obu metod.

  • Najpierw przewidź
  • Potem sprawdź
  • Na końcu wyjaśnij

Po tej lekcji: Wyjaśnisz sortowanie bąbelkowe i przez scalanie oraz posortujesz małe dane.

Zakres podstawowy · materiał otwarty

Bąbelkowe: porównuj sąsiadów

Dla [4, 1, 3, 2] porównaj 4 z 1 i zamień, potem 4 z 3 i zamień, potem 4 z 2 i zamień. Po jednym pełnym przejściu największa liczba jest na końcu. Powtarzamy dla krótszego fragmentu. Jeśli w całym przejściu nie było zamiany, lista jest już gotowa. Powtórzeń nie usuwamy.

Sprawdź w działaniu

Ustaw przestrzenne słupki

Zanim porównasz parę, przewidź: zostawić czy zamienić? Wysokość słupka to liczba, a pozycja to indeks. Widok 3D jest schematem danych, nie fizyczną symulacją.

Ta interakcja wymaga włączonego JavaScriptu.

Prześledź kod: Jedno przejście bąbelkowe

algorytm.pypython
liczby = [4, 1, 3]
for i in range(len(liczby) - 1):
    if liczby[i] > liczby[i + 1]:
        liczby[i], liczby[i + 1] = liczby[i + 1], liczby[i]
print(liczby)

Co robi ten kod?

Po porównaniu 4 i 1 lista ma postać [1,4,3]. Po porównaniu 4 i 3 dostajemy [1,3,4]. Jedno przejście nie wystarczy dla każdej listy. W scalaniu dla [4,1,3,2] części [1,4] i [2,3] łączymy w [1,2,3,4], zawsze biorąc mniejszą pierwszą wartość.

Ćwiczenie z pomocą · samodzielna praca

Twoja próba — bez punktów

Zapisz stan [5, 2, 4, 1] po jednym pełnym przejściu bąbelkowym. Osobno scal [1, 4, 7] i [2, 3, 8], pokazując każdy wybór.

Oczekiwany rezultat
Zapisz dane, kolejne decyzje i wynik. Sprawdź go w symulacji lub swoim programie.
Potrzebujesz pomocy? Rozwiązuj krok po kroku.
Krok 1 — pokaż podpowiedź

Zacznij od wypisania danych i ustalenia, czego szukasz.

Krok 2 — pokaż podpowiedź

Wykonaj ręcznie pierwszy krok zgodnie z regułą z lekcji.

Krok 3 — pokaż podpowiedź

Sprawdź wynik inną metodą i wyjaśnij, dlaczego algorytm się zatrzyma.

Otwórz tylko tyle podpowiedzi, ile potrzebujesz. Po każdym kroku wróć do zadania i sprawdź wynik.

Podsumowanie

Co warto zapamiętać

  1. Bąbelkowe porównuje i zamienia sąsiadów.
  2. Po przejściu największy element badanego fragmentu trafia na koniec.
  3. Testuj dane równe, uporządkowane i w odwrotnej kolejności.

Po zalogowaniu zobaczysz dodatkowe lekcje i materiały oznaczone jako rozszerzenie. Podstawowe quizy i zadania pozostają dostępne w biurku.

Dalej na swoim koncie

Rozgrzewki, quiz i zadania są w biurku ucznia.

Teoria jest otwarta dla wszystkich. Żeby rozwiązywać zadania, zapisywać szkice i widzieć swój postęp, zaloguj się.

Zaloguj się →
Źródła i dalsza nauka