matematykaszkolna.pl
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
Mariusz: https://ideone.com/iuiKZW Możesz jeszcze nieco przyspieszyć funkcję sortującą
6 wrz 00:49