算法思想:
1.采用数组,从i=0下标开始,每一次比较相邻的两个元素,如果a[i]>a[i+1],则交换。这样一次遍历,将会使最大的元素排 到最后边;
2.然后再从头开始,挨个比较,最后一位最大数不需要比较,所以需要比较的长度减1。
3.直到最后,只剩一个元素,也就是 a[i+1]不存在;
算法:
void func(int a[], int size)
{
int i,j,temp;
for(j=0; j<size-1; j++)
for(i=0; i<size-1-j; i++) //每遍历一次,需要比较的长度减一;
if(a[i] > a[i+1])
{
temp = a[i]; a[i] = a[i+1]; a[i+1] = temp;
}
}
算法分析: