简单C排序算法——Bubble Sort 冒泡排序算法
/*
Name: Sorting Algorithm Bubble_Sort
Copyright:
Author: Nirvana Of Phoenixl
Date: 14/03/22 16:40
Description:
Bubble Sort 冒泡排序算法 (从小到大排序)
冒泡排序
1. 从当前元素起,向后依次比较每一对相邻元素,若逆序则交换
2. 对所有元素均重复以上步骤,直至最后一个元素
*/
#include <stdio.h>
/*Sorting Algorithm Bubble_Sort*/
void bubble_sort(int arr[], int len)
{
int i, j, temp;
/* 外循环为排序趟数,len个数进行len-1趟 (len个元素比较len-1次)*/
for(i = 0; i<len-1; i++)
{
/*内循环为每趟比较的次数,第i趟比较len-i次(循环一趟少比较一个元素,比较次数len-1-i) */
for(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 arr[] = {32, 23, 54, 48, 78, 12, 10, 62, 5, 25};
/*计算数组元素个数*/
int len = (int)sizeof(arr)/sizeof(*arr);
int i;
/*冒泡排序函数*/
bubble_sort(arr, len);
for(i = 0; i < len; i++)
{
/*打印排序后的数组元素*/
printf(" %d",arr[i]);
}
return 0 ;
}