主要内容
1. 排序
对数组排序,是编程中非常重要的。
下面简单介绍“冒泡排序”算法。
1.1 冒泡排序
1. 从序号 0 开始,选择两个相邻的数;
2. 比较这两个数的大小;
3. 如果是按从小到大排列,就把小的放在左边,大的放在右边;从大到小,则相反;
4. 移动到下一个位置
5. 重复步骤2-4
6. 到最后一个元素后,回到开头位置
7. 重复步骤1-6
8. 全部排好后,退出循环
* 步骤 6 ,对终止位置,可以做如图所示的优化。
试一试:
请定义数组{6,5,3,1,8,7,2,4},然后将它从小到大排列。
/*
请完成后,查看示例程序
*/
1.2 代码
示例代码:
#include < iostream >
using namespace std;
int main()
{
int arr[] = {6,5,3,1,8,7,2,4};
int arr_size = sizeof(arr) / sizeof(arr[0]);
for(int i=0; i < arr_size; i++)
{
for(int j=i; j < arr_size; j++)
{
if(arr[i] > arr[j]) // 从小到大排序
{
int a = arr[i];
arr[i] = arr[j];
arr[j] = a;
}
}
}
return 0;
}
习题
课后练习