Упорядочение элементов массива. Сортировка методом пузырька
Сортировка методом пузырька. Сортировка пузырьковым методом является наиболее известной. Ее популярность объясняется запоминающимся названием, которое происходит из-за подобия процессу движения пузырьков в резервуаре с водой, когда каждый пузырек находит свой собственный уровень, и простотой алгоритма. Сортировка методом «пузырька» использует метод обменной сортировки и основана на выполнении в цикле операций сравнения и при необходимости обмена соседних элементов. Рассмотрим алгоритм пузырьковой сортировки более подробно.
Сравним нулевой элемент массива с первым, если нулевой окажется больше первого, то поменяем их местами. Те же действия выполним для первого и второго, второго и третьего, i- го и (i+1)-го, предпоследнего и последнего элементов. В результате этих действий самый большой элемент станет на последнее (n-1)-е место. Теперь повторим данный алгоритм сначала, но последний (n-1)-й элемент, рассматривать не будем, так как он уже занял свое место. После проведения данной операции самый большой элемент оставшегося массива станет на (n- 2)-е место. Так повторяем до тех пор, пока не упорядочим весь массив. Блок - схема сортировки элементов массива по возрастанию (для сортировки по убыванию надо поменять в блок-схеме знак «>» на знак «<») представлена на рис. 9.

Рисунок 9: Упорядочивание массива по возрастанию
методом пузырька
int main()
{
float b,max,a[20];
int i,j,n,k,nom;
cout<<"n=";
cin>>n;
cout<<"Massiv a\n";
for(i=0;i<n;i++)
cin>>a[i];
for(j=1;j<=n-1;j++)
for(i=0;i<=n-1-j;i++)
if (a[i]>a[i+1])
{
b=a[i];
a[i]=a[i+1];
a[i+1]=b;
}
cout<<"Massiv a\n";
for(i=0;i<n;i++)
cout<<"a("<<i<<")="<<a[i]<<"\t";
cout<<endl;
return 0;
}
Не нашли, что искали? Воспользуйтесь поиском:
|