冒泡排序
这个几种常见的排序的排序算法,我觉得比较重要,但是还是没搞懂
/*
#include <stdio.h>
int main()
{
int arr [][4] = { {1,3,4,5},{2,3,4,3 },{3,6,8,7} };
int i = 0;
int j = 0;
for ( i = 0; i < 3; i++)
{
for (j = 0; j < 4; j++)
{
printf("%d \t", arr[i][j]);
printf("&arr[%d][%d]=%p\n",i,j, &arr[i][j]);
}
printf("\n");
}
return 0;
}
*/
#include <stdio.h>
int bubble_sort(int arr[],int sz)
{
//计算元素个数
int i = 0;
for ( i = 0; i < sz-1; i++)
{
int j = 0;
if (arr[j]>sz-1-i)
{
//交换,采用了一个中间变量tmp
int tmp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = tmp;
}
}
}
int main()
{
int arr[] = { 1,3,5,6,2,3,6,9,3,6,8,0,7,6 };
//冒泡排序,两两相邻的元素比对,若需要,则交换位置
int sz = sizeof(arr) / sizeof(arr[0]);//数组名就是首元素地址
//这个sz不可以写在另一函数中,因为函数的值传递中只会传递其值,比如数组arr则会传递其值4字节
bubble_sort(arr,sz);
return 0;
}
日常
橘子受不同光源下色彩的变化