1.整理思维导图
2.写一个函数,获取用户的uid和gid并使用变量接收
3.整理冒泡排序、选择排序和快速排序的代码
冒泡排序
//冒泡排序
void bubble_sort(int a[],int len)
{int count=0;for(int i=1;i<len;i++) //控制轮数{for(int j=0;j<len-i;j++) //控制每一轮交换次数{if(a[j]>a[j+1]){a[j]+=a[j+1];a[j+1]=a[j]-a[j+1];a[j]-=a[j+1];count++;//如果交换,count++}}if(count==0) //已经有序,不需要继续循环{break;}}
}
选择排序
//选择排序
void select_sort(int a[],int len)
{for(int i=0;i<len-1;i++){int min=i;//默认最小值下标for(int j=i+1;j<len;j++){if(a[min]>a[j]){min=j;}}if(min!=i) //确定最小值{a[i]+=a[min];a[min]=a[i]-a[min];a[i]-=a[min];}}
}
快速排序
int one_sort(int a[],int low,int high)
{int key=a[low];//确定界定值while(low<high){while(low<high&&a[high]>=key) //找到右边小于界定值{high--;}a[low]=a[high];while(low<high&&a[low]<=key) //找到左边大于界定值{low++;}a[high]=a[low];}a[low]=key;return low;
}void quick_sort(int a[],int low,int high)
{if(low>=high)return;int mid=one_sort(a,low,high);quick_sort(a,low,mid);quick_sort(a,mid+1,high);
}