Қазақстан респудликасы білім және ғылым министрлігі


Программа 1. «Көпіршіктер» әдісімен сұрыптаудың тізбекті алгоритмі



Pdf көрінісі
бет26/57
Дата06.01.2022
өлшемі1,9 Mb.
#14410
1   ...   22   23   24   25   26   27   28   29   ...   57
Байланысты:
Malikova Paralel

Программа 1. «Көпіршіктер» әдісімен сұрыптаудың тізбекті алгоритмі.

1.      procedure BUBBLE-SORT(n) 

2.   begin

3.    for i:=n-1 downto 1 do

4.               for  j:=1 to i do

5.                  compare-exchange(aj,aj+1);

6.    end BUBBLE-SORT

Бұл алгоритмде ішкі цикл итерациясы Q(n) уақытта орындалса және Q(n) 

итерация жасалса, «көпіршіктер» әдісімен сұрыптауға кететін уақыт  - Q(n

2

). 



Бұл алгоритмді параллельділікке айналдыру үлкен қиындық келтіреді.  

Сондықтан бұл әдістің екінші бір түрі «тақ-жұп орын ауыстыру» алгоритмін

қарастырайық. 

3. «тақ-жұп орын ауыстыру» алгоритмі.



Бұл алгоритмде n  элемент  n  фазада сұрыпталады. Бұл алгоритмнің жұп 

және  тақ  фазалары  кезектестіріледі.  (a

1

,  a


2

,  ...,a


n

)  –  тізбегін  сұрыптау  керек 

болсын. Тақ фаза кезінде тақ индексті элементтер оң жақтағы көрші элементпен 

салыстырылып, егер шарт орындалса, олар орындарын алмастырады, яғни  (a

1



а



2

), (a


3

, a


4

), ..., (a

n-1

,a

n



) жұптары салыстырылып алмастырылады. Сол сияқты жұп 

фаза  кезінде,  жұп  индексті  элементтер  салыстырлып,  егер  шарт  орындалса, 

олар  орындарын  алмастырады,  яғни    (а

2

,  a



3

),  (a


4

,  a


5

),  ...,  (a

n-2

,a

n-1



)  жұптары 

салыстырылып  алмастырылады.  Сонда  тақ-жұп  ауыстыру  n    фазасынан  кейін 

тізбек  сұрыпталады.  Әрбір  алгоритмнің  фазасында    Q(n)  салыстыру  жасалса, 

барлығы n фаза болса, бұл алгоримтнің (sequential complexity) - Q(n

2

).



Достарыңызбен бөлісу:
1   ...   22   23   24   25   26   27   28   29   ...   57




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет