转自https://www.cnblogs.com/shen-hua/p/5422676.html
冒泡排序
for(int i=0;i<arr.length-1;i++){//外层循环控制排序趟数
for(int j=0;j<arr.length-1-i;j++){//内层循环控制每一趟排序多少次
if(arr[j]>arr[j+1]){
int temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
转自https://www.cnblogs.com/shen-hua/p/5424059.html
选择排序
//选择排序的优化
for(int i = 0; i < arr.length - 1; i++) {// 做第i趟排序
int k = i;
for(int j = k + 1; j < arr.length; j++){// 选最小的记录
if(arr[j] < arr[k]){
k = j; //记下目前找到的最小值所在的位置
}
}
//在内层循环结束,也就是找到本轮循环的最小的数以后,再进行交换
if(i != k){ //交换a[i]和a[k]
int temp = arr[i];
arr[i] = arr[k];
arr[k] = temp;
}
}
本文详细介绍了两种经典的排序算法:冒泡排序和选择排序。冒泡排序通过重复比较相邻元素并交换位置来排序,而选择排序则通过查找未排序部分的最小元素并将其放到已排序部分的末尾来实现排序。文章提供了详细的代码实现,帮助读者理解这两种排序算法的工作原理。
2万+

被折叠的 条评论
为什么被折叠?



