龙空技术网

java数组元素排序,冒泡排序和选择排序

吾爱乐享 205

前言:

现在各位老铁们对“java字符串数组排序”大概比较关怀,咱们都需要知道一些“java字符串数组排序”的相关资讯。那么小编也在网络上收集了一些关于“java字符串数组排序””的相关知识,希望同学们能喜欢,咱们一起来了解一下吧!

java学习之数组元素排序

选择排序

*返回值类型 void

*参数列表 int[] arr

* 分析:选择排序

* 第一次arr[0]与arr[1-4]比较,总共比较4次

* 第二次arr[1]与arr[2-4]比较,总共比较3次

* 第三次arr[2]与arr[3-4]比较,总共比较2次

* 第四次arr[3]与arr[4]比较,总共比较1次

冒泡排序

返回值类型void

* 参数列表 int[] arr

* 分析:冒泡排序

* 第一次比较arr[0]和arr[1],arr[1]和arr[2],arr[2]和arr[3],arr[3]和arr[4]比较了4次

* 第二次比较arr[0]和arr[1],arr[1]和arr[2],arr[2]和arr[3]比较了3次

* 第三次比较arr[0]和arr[1],arr[1]和arr[2]比较了2次

* 第四次比较arr[0]和arr[1]比较了1次

package com.ifenx8.study.array;

publicclassDemo_BubbleSort{

/**

需求:

数组元素:{24, 69, 80, 57, 13}

请对数组元素进行排序。

*/

publicstaticvoid main(String[] args){

int[] arr ={24,69,80,57,13};

//bubbleSort(arr);//冒泡排序

selectSort(arr);//选择排序

print(arr);

}

/*

*返回值类型 void

*参数列表 int[] arr

*

* 分析:选择排序

* 第一次arr[0]与arr[1-4]比较,总共比较4次

* 第二次arr[1]与arr[2-4]比较,总共比较3次

* 第三次arr[2]与arr[3-4]比较,总共比较2次

* 第四次arr[3]与arr[4]比较,总共比较1次

*

*/

publicstaticvoid selectSort(int[] arr){

for(int i =0; i < arr.length -1; i++){

for(int j = i +1; j < arr.length; j++){if(arr[i]> arr[j]){

/*int temp = arr[i];

arr[i] = arr[j];

arr[j] = temp;*/

swap(arr, i , j);

}

}

}

}

/**冒泡排序

* 返回值类型void

* 参数列表 int[] arr

* 分析:

* 第一次比较arr[0]和arr[1],arr[1]和arr[2],arr[2]和arr[3],arr[3]和arr[4]比较了4次

* 第二次比较arr[0]和arr[1],arr[1]和arr[2],arr[2]和arr[3]比较了3次

* 第三次比较arr[0]和arr[1],arr[1]和arr[2]比较了2次

* 第四次比较arr[0]和arr[1]比较了1次

*

*/

publicstaticvoid bubbleSort(int[] arr){

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;*/

swap(arr , j , j +1);

}

}

}

}

/*

*打印数组

*/

publicstaticvoidprint(int[] arr){

for(int i =0; i < arr.length; i++){

System.out.print(arr[i]+" ");

}

}

/*

* 把两个排序中共同的部分抽取成一个方法

* int temp = arr[i];

arr[i] = arr[j];

arr[j] = temp;

代码更简洁

*/

privatestaticvoid swap(int[] arr,int i ,int j){

int temp = arr[i];

arr[i]= arr[j];

arr[j]= temp;

}

}

标签: #java字符串数组排序