Zaawansowane algorytmy i struktury danych/Ćwiczenia 13: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Rytter (dyskusja | edycje)
Nie podano opisu zmian
Rytter (dyskusja | edycje)
Nie podano opisu zmian
Linia 42: Linia 42:
Dzielimy tablicę na kawałki długości <math> \sqrt{n} </math>. Z otrzymanymi kawałkami robimy to samo, aż  
Dzielimy tablicę na kawałki długości <math> \sqrt{n} </math>. Z otrzymanymi kawałkami robimy to samo, aż  
długość będzie pewną stałą.
długość będzie pewną stałą.
Zadanie.
Jaka jest asymptotycznie liczba operacji w układzie arytmetycznym odpowiadającym algorytmowi PrefSums1.
Rozwiązanie.
<math> O(n \log n) </math>
Zadanie.
Jaka jest asymptotycznie liczba operacji w układzie arytmetycznym odpowiadającym algorytmowi PrefSums2.
Rozwiązanie.
<math> O(n ) </math>

Wersja z 11:08, 31 sie 2006

Zadanie ?

Dany jest ciąg nawiasów ( lub ), sprawdzić czy jest to ciąg poprawny nawiasowo w czasie log n z pracą liniową.

Rozwiązanie

Zasosować algorytm na sumy prefiksowe, lewy nawias +1, prawy nawias -1. sumy musza być nieujemne a nakońcu zero.

Zadanie ?

Dany jest ciąg nawiasów okrągłych lub kwadratowych ( , ), [ , ], sprawdzić czy jest to ciąg poprawny nawiasowo w czasie log n z pracą liniową.


Zadanie ?

Uzasadnić dlaczego algorytm $A_{k+1}$ liczenia minimum w tablicy n-elementowej działa w czasie O(1) używając Pk+1(n)) procesor"ow, gdzie Pk(n)=n1+ϵk,ϵk = 12k1 Zakładamy, że dwa procesory nie mogą próbować wpisać jednocześnie dwie różne wartości w to samo miejsce (ale mogą jednocześnie tę samą wartość).


Rozwiazanie

max{(nnα)1+ϵk, nnα×(nα)1+ϵk} = O(Pk+1(n))

gdzie α=12k+1


Zadanie ?

Oblicz na CRCW PRAM minimum w tablicy n-elementowej w czasie O(log log n) używając O(n / log log n) procesorów. Zakładamy, że dwa procesory nie mogą próbować wpisać jednocześnie dwie różne wartości w to samo miejsce (ale mogą jednocześnie tę samą wartość).


Rozwiazanie

Dzielimy tablicę na kawałki długości n. Z otrzymanymi kawałkami robimy to samo, aż długość będzie pewną stałą.


Zadanie.

Jaka jest asymptotycznie liczba operacji w układzie arytmetycznym odpowiadającym algorytmowi PrefSums1.

Rozwiązanie.

O(nlogn)


Zadanie.

Jaka jest asymptotycznie liczba operacji w układzie arytmetycznym odpowiadającym algorytmowi PrefSums2.

Rozwiązanie.

O(n)