冒泡排序

来源:互联网 发布:windows微信登录 编辑:程序博客网 时间:2024/06/05 11:56
#include<iostream>using namespace std;// 冒泡排序算法//list为一个int[]数组,存放有n个元素,下面的算法对数组中元素按从小到大的顺序排列void bubbleSort(int list[], int n){for (int i = 1; i <= n - 1; i++)//外层循环,第一次循环挑出最大的,第二次循环挑出次大的元素,,那么10个元素,循环9次就能确定出9个元素的位置,{for (int j = 1; j <= n - i; j++)//i=1进行第一次外层循环,内层循环都是第一个元素与第二元素比较,交换,然后第二个元素与第三个元素交换,交换...比如10个元素进行9次=10-1两两交换就能选出最大的那个元素;//i=2 接着进行第二次外层循环,又是第一个元素与第二个元素比较,交换....,不过这次只有9个元素要进行排序,只要进行8次=10-2两两比较;//第i次循环,只要进行10-i次两两比较就行;{if (list[j-1] > list[j])swap(list[j-1],list[j]);}}}int main(){int a[] = { 10, 9, 8, 7, 6, 1, 2, 3, 4, 5 };bubbleSort(a,10);for (int k = 0; k < 10; k++)cout << a[k] << " ";cout << endl;system("pause");return 0;}

0 0
原创粉丝点击