ALG3

ALG3



4.1. Sortowanie przez wstawianie, algorytm klasy 0(N2) 83

Idea tego algorytmu opiera się na następującym niezmienniku: w danym momencie trzymamy w ręku karty posortowane3 oraz karty pozostałe do posortowania. W celu kontynuowania procesu sortowania bierzemy pierwszą z brzegu kartę ze sterty nieposortowanej i wstawiamy ją na właściwe miejsce w pakiecie już wcześniej posortowanym.

Popatrzmy na dwa kolejne etapy sortowania. Rysunek 4-2 obrazuje sytuację już po wstawieniu karty *10’ na właściwe miejsce, kolejną kartą do wstawienia będzie ‘6’.

....

2

3

7

9

10

1

1

1

6

8

4

Karty posortowane

Karty do posortowania


Rys. 4 - 2.

Sortowanie prze: wstawianie (2).

Tuż po poprawnym ułożeniu szóstki otrzymujemy „rozdanie” z rysunku 4-3.

Karty posortowane

Karty do posortowania


Rys. 4 - 3.

Sortowanie prze: wstawianie (3).

Widać już, że algorytm jest nużąco jednostajny i... raczej dość wolny.

Ciekawa odmiana tego algorytmu realizuje wstawianie poprzez przesuwanie zawartości tablicy w prawo o jedno miejsce w celu wytworzenia odpowiedniej luki, w której następnie umieszcza ów element. Skąd mamy wiedzieć, czy kontynuować przesuwanie zawartości tablicy podczas poszukiwania luki? Podjęcie decyzji umożliwi nam sprawdzanie warunku sortowania (sortowanie w kierunku wartości malejących, rosnących czy też wg innych kryteriów). Popatrzmy na tekst programu:

5 Na samym początku algorytmu możemy mieć puste ręce, ale dla zasady twierdzimy wówczas, że trzymamy w nich zerową ilość kart.


Wyszukiwarka

Podobne podstrony:
75260 zdj1 (9) Sortowanie przez wstawianie 1 Algorytm jest podobny do porządkowania kart trzymanych
4.2. PROSTE ALGORYTMY SORTOWANIA TABLIC 15 4.2.2. Sortowanie przez wstawianie Algorytm sortowania pr
15/15 ALGORYTMIKA2. Sortowanie przez wstawianie (ang. insertion sort). Schemat blokowy algorytmu: Ry
Charakterystyczne cechy: gdy liczby są już posortowane w algorytmie sortowania przez wstawianie pętl
ASD ITN k1 05 2002 5 Zad. 8 Ile przestawień elementów wykona algorytm inserion-sort (sortowania prz
Procedura sortowania przez wstawianie: insertsort([],[]). insertsort([X
74308 zdj3 (2) Sortowanie przez kopcowanie Yoid BuldHeap( element A[], index size) { for (index i =
Wstawianie Sortowanie przez wstawianie i=1; Dane we: tab - tablica elementów do sortowania - typ ele
2. Sortowanie przez wstawianie UWAGA! Jeżeli wyskoczy komunikat „Subscript out of rangę" należy
4.2. PROSTE ALGORYTMY SORTOWANIA TABLIC 12 4.2.1. Sortowanie przez wybór W algorytmie sortowania prz
34536 zdj2 (9) Sortowanie przez wstawianie lnsertionSort(n) for i 2 to n x wstaw x w odpowiednim mi
ALG3 Rozdział 3Analiza sprawności algorytmów Podstawowe kryteria pozwalające na wybór właściwego al
ALG3 6.3. Kilka przykładów derekursywacji algorytmów 173 Pokaźna grupa procedur rekurencyjnych dość

więcej podobnych podstron