您的位置:首页 > 其它

数组排序之冒泡排序

2017-10-20 10:07 148 查看
package arraysort;
/*2017
* 冒泡排序法
* a.length=6
*a[0] a[1] a[2] a[3] a[4] a[5]
*初始值: 34 19 11 109 3 56
*第一轮:a[0]和a[1]比较,a[0]>a[1]则交换位置,然后a[1]和a[2]在做这个判断.....a[a.length-2]和a[a.length-1]
* 19 11 34 3 56 [109]
*第二轮:a[0]和a[1]比较,a[0]>a[1]则交换位置,然后a[1]和a[2]在做这个判断.....a[a.length-3]和a[a.length-2]
* 11 19 3 34 [56] 209
*...
*如此经过5轮(a.length-1)即可排序
*
*/
public class BubbleSortDemo {
public static void main(String[] args) {
int[] ary={34,19,11,109,3,56};
bubbleSort(ary);
}
public static void bubbleSort(int[] arr) {
for (int i = 0; i < arr.length-1; i++) {
for (int j = 0; j < arr.length-i-1; j++) {//注意执行效率
// for (int j = 0; j < arr.length-1; j++) {
if (arr[j]>arr[j+1]) {
exchangePosition(arr, j, j+1);
// System.out.println("123");
}
}
printArr(arr);
}

}
//创建一个遍历输出数组的方法
public static void printArr(int[] arr){
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]+" ");
}
System.out.println();
}

public static void exchangePosition(int a[],int i,int j){
int temp=a[i];
a[i]=a[j];
a[j]=temp;

}
}


数组排序之冒泡排序
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐