今天看二叉树的时候,测了一下二叉树和冒泡排序的用时,代码在下面
static //两层循环的冒泡排序
//arr是数组,len是数组长度
void bubllesort1(int arr[],int len){
if (len<2) return; //元素小于2直接返回
int ii;//趟数计数器
int jj;//每趟的元素位置计数器
int itmp;//比较元素后交换位置用的临时变量
int ifswap;//排序过程中是否交换过元素,0-未交换,1-有交换
for(ii=len-1;ii>0;ii--) //比较len-1次
{
ifswap=0; //初始化交换标识
for(jj=0;jjarr[jj+1]) //大的元素放后面
{
itmp=arr[jj+1];
arr[jj+1]=arr[jj];
arr[jj]=itmp;
ifswap=1; // 设置交换标志。
}
}
if(ifswap==0) return;
}
}
static //两层循环的选择排序
//arr是数组,len是数组长度
void changenum(int arr[],int a,int b){
int itmp;//比较元素后交换位置用的临时变量
itmp=arr[a];
arr[a]=arr[b];
arr[b]=itmp;
}
static void sellectsort1(int arr[],int len){
if (len<2) return; //元素小于2直接返回
int ii;//
int left,right;//最左,最右下标
int min, max;//最大值,最小值下标
left=0;right=len-1;
while(left



