今天写的这个冒泡排序还是相对前面两个排序算法,是简单了很多的(我个人这样认为)
OK,下面就让我们开始今天的算法吧
冒泡排序
简单介绍:
冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法
它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素已经排序完成。
这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。
(从介绍了解)要求:
我们需要遍历多次数据数组,然后每次遍历都将相邻的两位数据比较排序,所以
上代码!!!
代码区:
#include <iostream>
using namespace std;
/*
冒泡排序
*/
int bubbleSort(int arr[], int n)
{
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
if (arr[j] > arr[j + 1])
{
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
return 0;
}
int main()
{
int arr[10] = { 3,1,2,4,6,5,7,9,8,10 };
cout << "排序前:";
for (int i = 0; i < 10; i++)
{
cout << arr[i] << ",";
}
cout << endl;
bubbleSort(arr, 10);
for (int j = 0; j < 10; j++)
{
cout << arr[j] << ",";
}
return 0;
}
今天的算法就到这里了,明天我们继续见吧!