package JavaSolution;
/**
* @author xuekun
*Class:BubbleSort类实现冒泡排序并测试
*/
public class BubbleSort {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] array = {5,9,15,1,6,26,3,4};
bubbleSort(array);
for(int i:array) {
System.out.println(i);
}
}
/**
* @author xuekun
*Function:交换两个变量的值
*@param array:待交换的数组
*@param i:带交换的变量在数组里的位置
*@param j:带交换的变量在数组里的位置
*/
private static void swap(int[] array,int i,int j) {
if(i != j) {
int temp = array[i];
array[i] = array[j];
array[j] = temp;
}
}
/**
* @author xuekun
*Function:冒泡排序
*step1 比较相邻的元素。如果第一个比第二个大,就交换他们两个。
*step1 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。
*step2 针对所有的元素重复以上的步骤,除了最后一个。
*step3 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
*@param array 待排序的数组
*
*/
private static void bubbleSort(int[] array) {
for(int i = 0; i < array.length - 1; i++) {
for(int j = 0; j < array.length-1; j++) {
if(array[j] > array[j+1]) {
swap(array,j,j+1);
}
}
}
}
}
Java之冒泡排序
最新推荐文章于 2024-03-20 23:41:10 发布