Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Жұп-тақ әдісімен сұрыптау алгоритмін сипаттаңыз



Сұрыптау (Сортировка; sorting) - массив элементтерін белгілі бір заңдылықпен орындарын ауыстырып реттеупроцессін айтамыз. Мысалы, сандар массивін өсуі, кемуі бойынша сұрыптау, жолдар массивін алфавит бойынша сұрыптау және тағы басқа. Сұрыптау мақсаты - көптеген сұрыпталған обьектінің ішінен белгілі бір элементті іздеуді оңайлату. Ақпараттық жүйелерде мәліметтерді сұрыптаудың маңызы өте зор.

Жұп-тақ сұрыптау - сұрыптау алгоритмдеріндегі көпіршікті сұрыптаудың бір модификациясы, паралелльді процессорларға арналған қарапайым алгоритм. Сұрыптаудың массив элементтерінің жұп және тақ индекстерін салыстыру арқылы жүзеге асырылады. Жұп-тақ сұрыптау алгоритмін 1972 жылы Н. Хаберман ұсынды. Жұмыс істеу уақыты O(). Жұп-тақ сұрыптауы аты айтып тұрғандай әр итерацияда не тақ, не жұп нөмерлі элементтермен жұмыс жасайды.

#include<iostream>

#include<stdio.h>

#include<algorithm>

using namespace std;

int main(){

freopen("input.txt","r",stdin);

freopen("output.txt","w",stdout);

int n,i,j,a[99],s=0;

cin>>n;

for(i = 0; i < n; i++)

cin>>a[i];

for(i = 0; i < n; i++)

{

if (i%2!= 0)

{

for(j = 2; j < n; j+=2)

if (a[j] < a[j-1]){

swap(a[j-1], a[j]);

s++;}

}

else

{

for(j = 1; j < n; j+=2)

if (a[j] < a[j-1]){

swap(a[j-1], a[j]);

s++;}

}

for(j = 0; j < n; j++)

cout << a[j] << " ";

cout << endl;

if(s == 0) break;

else s = 0;

}

return 0;

}





Дата публикования: 2015-07-22; Прочитано: 968 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...