黑马程序员技术交流社区
标题:
选择排序和冒泡排序写法总结
[打印本页]
作者:
刘印
时间:
2015-11-2 00:23
标题:
选择排序和冒泡排序写法总结
package cn.lyne;
import java.util.Arrays;
public class Test {
public static void main(String[] args) {
int[] arr = {19,12,22,38,77,64,8};//6
//选择排序
selectSort(arr);
System.out.println(Arrays.toString(arr));
//冒泡排序
// bubbleSort(arr);
// System.out.println(Arrays.toString(arr));
}
/*
* 冒泡排序方法
*/
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++) {
if(arr[j]>arr[j+1]){
//用位运算做数据交换
arr[j] = arr[j] ^ arr[j+1];
arr[j+1] = arr[j] ^ arr[j+1];
arr[j] = arr[j] ^ arr[j+1];
}
}
}
}
/*
* 选择排序方法
*/
public static void 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]){
//用位运算做数据交换
arr[i] = arr[i] ^ arr[j];
arr[j] = arr[i] ^ arr[j];
arr[i] = arr[i] ^ arr[j];
}
}
}
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2