【发布时间】:2020-10-27 18:28:13
【问题描述】:
public class bubbleSort {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] arr = {50,40,30,20,10};
bubbleSort1(arr,0,arr.length-1);
display(arr);
}
public static void bubbleSort1(int[] arr,int i, int li) {
if (i==0) {
return;
}
if (i==li) {
bubbleSort1(arr,0,li-1);
return;
}
if (arr[i]>arr(i+1)) {
int temp = arr[i];
arr[i]=arr[i+1];
arr[i+1]=temp;
}
bubbleSort1(arr,i+1,li);
}
public static void display(int[] arr) {
for(int i=0;i<arr.length;i++) {
System.out.print(arr[i]+" ");
}
}
}
我正在做冒泡排序,但代码不起作用,但我不知道为什么它只打印我提供给它的数组。
【问题讨论】:
-
您正在为
i调用值为0的方法,并且该方法的第一行是if(i==0) { return; }。那么,您的方法完全什么都不做,真的很令人惊讶吗?
标签: java recursion bubble-sort