Sprawdź się
Napisz program, który wykorzystując sortowanie przez wybieranie, poda x
najmniejszych liczb z n
-elementowej tablicy liczb naturalnych dane
. Swój program przetestuj dla następujących danych:
n = 17
dane = [696, 587, 501, 811, 162, 980, 18, 207, 638, 49, 329, 316, 305, 406, 25, 16, 542]
x = 5
Specyfikacja problemu:
Dane:
n
– liczba elementów tablicydane
; liczba naturalnadane
–n
-elementowa tablica liczb naturalnychx
– liczba najmniejszych liczb z tablicydane
, które program powinien wypisać; liczba naturalna; .
Wynik:
Program wypisuje x
najmniejszych liczb z n
-elementowej tablicy dane
. Liczby powinny być wypisane w jednej linii i oddzielone znakiem spacji.
Napisz program, który sortuje niemalejąco n
-elementową tablicę dane
z użyciem algorytmu sortowania przez wybieranie i wypisuje dwie liczby naturalne będące liczbą porównań i liczbą przestawień wykonaną przez algorytm. Swój program przetestuj dla następujących zestawów danych:
n1 = 17
,dane1 = [8, 19, 35, 67, 76, 101, 112, 124, 147, 153, 178, 199, 216, 235, 245, 261, 281]
n2 = 17
,dane2 = [274, 258, 247, 227, 210, 190, 174, 166, 152, 123, 108, 98, 68, 57, 47, 22, 9]
n3 = 17
,dane3 = [22, 271, 115, 199, 95, 260, 265, 161, 186, 151, 256, 255, 224, 36, 138, 142, 236]
n4 = 7
,dane4 = [117, 151, 191, 190, 239, 128, 139]
Specyfikacja problemu:
Dane:
n
– liczba elementów w tablicydane
dane
–n
-elementowa tablica liczb naturalnych do posortowania
Wynik:
Program wypisuje dwie liczby: liczbę porównań oraz liczbę przestawień wykonanych w trakcie działania algorytmu sortowania. Liczby powinny być wypisane w jednej linii i oddzielone znakiem spacji.
Program powinien wypisać po dwie liczby dla każdego zestawu danych, co daje w sumie osiem liczb wypisanych w czterech liniach.
Dla zestawu danych:
n = 4
dane = [15, 17, 5, 4]
program powininen wypisać: 6 3
.
Algorytm kolejno wykonuje następujące operacje:
porównanie
17
z15
porównanie
5
z15
porównanie
4
z5
zamiana
15
z4
porównanie
5
z17
porównanie
15
z5
zamiana
17
z5
porównanie
15
z17
zamiana
17
z15