大家好,又见面了,我是你们的朋友全栈君。
代码思路
创建一个bound,(0,bound)是待排序区间。遍历数组,如果前一个的值大于后一个,交换。直到将这个最大值挪到数组的最后。
代码示例
import java.util.Arrays;
public class Sort {
public void BubbleSort(int[] arr){
//遍历数组,如果前一个的值大于后一个,交换。直到将这个最大值挪到数组的最后
for(int bound = 0;bound<arr.length-1;bound++) {
for (int i = 1; i < arr.length; i++) {
if (arr[i - 1] > arr[i]) {
int tmp = arr[i - 1];
arr[i - 1] = arr[i];
arr[i] = tmp;
}// end if
}// end for
}
System.out.println(Arrays.toString(arr));
}//end BubbleSort
public static void main(String[] args){
Sort sort = new Sort();
int[]arr1={
7,4,1};
sort.BubbleSort(arr1);
}// end main
}//end Sort
运行结果
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/156873.html原文链接:https://javaforall.net