Geo
Dziadek Mróz:
Geo Dany jest stos S zawierający liczby całkowite. Napisać pseudokod algorytmu, który
przeniesie
wszystkie parzyste elementy stosu S do tablicy A, posortuje je metodą sortowania bąbelkowego,
a następnie przeniesie wszystkie elementy posortowanej tablicy A do kolejki Q.
Proszę o pomoc w napisaniu tego pseudokodu.
procedure bubbleSort(tabA : array of int)
iloscEl = tabA.count;
for i = 0 to iloscEl−1 do:
zamienione = false
for j = 0 to iloscEl−1 do:
# porównanie sąsiadujących elementów
if tabA[j] > tabA[j+1] then
# zamiana ich
swap( tabA[j], tabA[j+1] )
zamienione = true
end if
end for
# jeżeli nie zamieniono żadnego elementu to posortowano
if(not zamienione) then
break
end if
end for
end procedure return tabA
procedure main()
S = full stack of int;
iloscElS = S.count;
A = empty array of int;
a = 0;
for i = 0 to iloscElS−1:
# jeżeli szczyt jest parzysty
if top(S) % 2 == 0 then:
# wstaw do A
A[a] = top(S);
a++;
# ściągnij szczyt ze stosu
pop(S)
# jeżeli szczyt jest nieparzysty
else
pop(S)
end if
end for
# sortowanie bąbelkowe na A
A = bubbleSort(A);
iloscElA = A.count
Q = empty queue of int;
# wstawianie z A do Q
for i = 0 to iloscElA−1:
Q.pushback(A[i]);
end for
end procedure
5 wrz 15:45
6 wrz 00:49