python:masyvo-rusiavimas
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| python:masyvo-rusiavimas [2016/12/01 13:46] – linas | python:masyvo-rusiavimas [2017/02/04 18:17] (current) – mantas | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | Burbulo | + | Burbulo |
| <code python> | <code python> | ||
| import random | import random | ||
| - | f = [] | + | f = [random.randint(1, |
| - | for i in range(30): | + | print(f) |
| - | | + | |
| - | print (f) | + | for i in range(len(f) - 1): |
| + | for y in range(len(f) - i - 1): | ||
| + | if f[y] > f[y + 1]: | ||
| + | f[y], f[y + 1] = f[y + 1], f[y] | ||
| - | for i in range(30): | + | print(f) |
| - | for y in range(30-1): | + | |
| - | if f[y] > f[y+1]: | + | |
| - | tmp = f[y] | + | |
| - | f[y] = f[y+1] | + | |
| - | f[y+1] = tmp | + | |
| - | + | ||
| - | print (f) | + | |
| </ | </ | ||
| + | |||
| + | Atsitiktinių skaičių masyvas. | ||
| + | |||
| + | [71, 25, 44, 23, 78, 41, 61, 44, 70, 42, 1, 76, 48, 55, 56, 40, 21, 68, 28, 91, 29, 64, 20, 23, 37, 69, 43, 19, 51, 25] | ||
| + | |||
| + | Didėjimo tvarka surūšiuotas masyvas. | ||
| + | |||
| + | [1, 19, 20, 21, 23, 23, 25, 25, 28, 29, 37, 40, 41, 42, 43, 44, 44, 48, 51, 55, 56, 61, 64, 68, 69, 70, 71, 76, 78, 91] | ||
| + | |||
| + | Algoritmo vykdymas pažingsniui. | ||
| + | |||
| + | |||
| + | Naudosime skaičių masyvą „5 1 4 2 8“ ir jį surūšiuosime nuo mažiausio elemento iki didžiausio. | ||
| + | |||
| + | Pirmas praėjimas: | ||
| + | |||
| + | ([5 1] 4 2 8) -> ([1 5] 4 2 8) Čia algoritmas palygina pirmus 2 elementus ir juos sukeičia vietomis. | ||
| + | |||
| + | (1 [5 4] 2 8) -> (1 [4 5] 2 8) | ||
| + | |||
| + | (1 4 [5 2] 8) -> (1 4 [2 5] 8) | ||
| + | |||
| + | (1 4 2 [5 8]) -> (1 4 2 [5 8])) Dabar elementai yra išdėstyti tinkama tvarka, todėl algoritmas jų nesukeičia vietomis. | ||
| + | |||
| + | |||
| + | Antras praėjimas: | ||
| + | |||
| + | ([1 4] 2 5 8) -> ([1 4] 2 5 8) | ||
| + | |||
| + | (1 [4 2] 5 8) -> (1 [2 4] 5 8) | ||
| + | |||
| + | (1 2 [4 5] 8) -> (1 2 [4 5] 8) | ||
| + | |||
| + | Dabar masyvo elementai išdėstyti tinkama tvarka, bet algoritmas to nežino. Algoritmui reikia vieno praėjimo be pakeitimų, kad žinotų, jog elementai reikiama tvarka. | ||
| + | |||
| + | Trečias praėjimas: | ||
| + | |||
| + | ([1 2] 4 5 8) -> ([1 2] 4 5 8) | ||
| + | |||
| + | (1 [2 4] 5 8) -> (1 [2 4] 5 8) | ||
| + | |||
| + | Ketvirtas praėjimas: | ||
| + | |||
| + | ([1 2] 4 5 8) -> ([1 2] 4 5 8) | ||
| + | |||
| + | Algoritmas baigė savo darbą. | ||
| + | |||
python/masyvo-rusiavimas.1480592814.txt.gz · Last modified: by linas
