1.冒泡排序
冒泡排序是一种简单的排序算法,分为大数下沉和小数上浮两种。
冒泡排序步骤(大数下沉):
1)比较相邻的元素。如果第一个比第二个大,就交换他们两个。
2)对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这时,最后的元素就是最大的数。
3)针对所有的元素重复以上步骤,除了最后一个。
实例:输入一组数据,使用冒泡排序法进行排序,并输出。
#include <stdio.h>
// 冒泡排序
void maopao(int arr[],int len){
int temp;
for (int i =0; i < len - 1; i ++) {
for (int j =0; j < len - 1 - i ; j ++) {
if (arr[j] > arr[j + 1] ) {
temp = arr[j];
arr[j] = arr[j +1];
arr[j +1] = temp;
}
}
}
}
int main(int argc,const char * argv[]) {
//定义并初始化一个数组
int a[6] = { 21,23, 8, 0, -98, 7656};
//输出排序前的元素
for (int i =0; i < 6; i ++) {
printf("%d\t", a[i]);
}
// 换行
printf("\n");
// 排序
maopao(a, 6);