一、冒泡算法实现分析
1、假设有5个元素分别为8,6,15,9,3对其进行冒泡排序,我们需要关注的有三点如下:
(1)元素个数 n;
(2)需要比较的趟数 i;
(3)每趟比较的次数 j;
2、它们之间的关系为:
(1)由于每比较一趟后,所需的比较的元素个数就减少1,所以总共比较的趟数为n-1趟
(2)由于元素是相邻之间进行两两比较的,所以每趟比较的次数为本趟元素个数减去1;
3、详细过程如下表
二、代码实现
#include
#include
#include
int main(char argc, char *argv[])
{
int n = atoi(argv[]), a[n], i, j, tmp;
if (argc != )
{
printf("Usage: %s\n", argv[]);
return -;
}
printf("请输入n = %d个元素\n",n);
for (i=; i
{
scanf("%d", &a[i]);
}
f