Sortowanie B\u0105belkowe polega na iteracyjnym wielokrotnym pe\u0142nym przegl\u0105dzie tablicy
wej\u015bciowej i zamianie parami element\u00f3w, kt\u00f3re nie s\u0105 u\u0142o\u017cone we w\u0142a\u015bciwy spos\u00f3b.
Z\u0142o\u017cono\u015b\u0107 obliczeniowa algorytmu wynosi O(n2).
Rozwi\u0105zanie przeze mnie zaproponowane sprowadza si\u0119 do wykonania n/2 iteracji. Ka\u017cda z iteracji zawiera 2 etapy. W pojedynczej iteracji dokonane zostaj\u0105 por\u00f3wnania i przestawienia wszystkich s\u0105siaduj\u0105cych ze sob\u0105 element\u00f3w tablicy wej\u015bciowej. Wynik ko\u0144cowy sortowania nale\u017cy pobra\u0107 z ko\u0144cowych wierzcho\u0142k\u00f3w z ostatniej iteracji.
Posortowanie tablicy wymaga wykonania n/2 iteracji. Ka\u017cda z iteracji zawiera 2 etapy.
Oznacza to,\u017ce z\u0142o\u017cono\u015b\u0107 obliczeniowa r\u00f3wnoleg\u0142ego algorytmu wynosi dok\u0142adnie\u0398(n). Ten
sam algorytm wykonany na 1 procesorze ma z\u0142o\u017cono\u015b\u0107 obliczeniow\u0105:
Dla optymalnej liczby procesor\u00f3w p*=n, wykonywanych jest dok\u0142adnie n r\u00f3wnoleg\u0142ych
przes\u0142a\u0144 danych mi\u0119dzy procesorami. Z\u0142o\u017cono\u015b\u0107 obliczeniowa przy uwzgl\u0119dnieniu przesy\u0142u
danych:
Leave a Comment