学习目标:冒泡排序
掌握冒泡排序的原理以及代码实现学习内容:
1、 原理 2、 代码学习产出:
1、 逐趟扫描:大循环里面套一个小循环。每一趟大循环之后都把所在的那一趟的最值都排到最后。如下数列描述,在第一趟中把4的值换到它应该在的位置,之后每趟按照顺序把数给送到应该在的位置,直到最后一趟。
2.代码
// bubble_sort.cpp :
#include <iostream>
using namespace std;
void bubble_sort(int n[], int b)
{
int i, j;
for (i = 0; i < b;i++)
{
for (j = 0; j < b-i-1; j++)//注意此处要减1,不减1会导致内存报错,和代码结构有关
{
if (n[j] > n[j + 1])
{
swap(n[j], n[j + 1]);
}
}
}
}
int main()
{
int i;
int c[] = { 10,9,8,7,6,5,4,3,2,1 };
bubble_sort(c, 10);
for (i = 0; i < 10; i++)
{
cout << c[i] << endl;
}
}