public static void main(String[] args) {
int[] arr = {66,3,6,9,2,5,8,13,23};
int a[] = new int[]{1,3,5,7,2,4,6};
int b[] = {1,5,9,2,6,10};
//使用数组的内定方法
Arrays.sort(b);
System.out.println("使用数组的方法排序"+Arrays.toString(b));
/*
* @description:
* 选择排序
*选择排序,首先在未排序序列中找到最大值,存放到排序序列的起始位置。
* 第二次循环,从剩余未排序元素中继续寻找最大值,然后放到已排序的末尾。
* 重复第二步,知道所有元素排序完毕。
**/
//普通for循环排序(选择排序)
for (int i = 0; i < a.length-1; i++) { //比较的次数,总长度-1.
int min = i;
for (int j = i+1; j < a.length; j++) { //比较的位置(起始下标),从第二位开始比较。
//如果当前数小于最小值,就把最小值赋值到当前位置。
if(a[j]<a[min]){
min = j;
}
}
//依次比较之后的所有数量。进行替换。
if(i!=min){
int t = a[i];
a[i] = a[min];
a[min] = t;
}
}
//使用Arrays.toString转换成数组
System.out.println("选择排序"+Arrays.toString(a));
/*
* @description:
* 冒泡排序
* 冒泡排序主要是两个相邻的位置进行比较。
**/
//冒泡排序
for (int i = 0; i < arr.length; i++) { //
for (int j = 0; j < arr.length-1; j++) {
//如果第一个比第二个的值大,就交换两个值的位置。
if(arr[j]<arr[j+1]){
int t = arr[j];
arr[j] = arr[j+1];
arr[j+1] = t;
}
}
}
System.out.println("冒泡排序"+Arrays.toString(arr));
}
数组排序的三种方法
最新推荐文章于 2024-10-01 17:53:56 发布

4445

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



