我需要一些帮助来完成这个练习。 我必须创建一个包含冒泡排序的方法,并在该方法内创建另一个交换值的方法。 我试过这个:
public static void main(String[] args) {
int i, taille = 5;
int[] tableau = new int [taille];
Scanner readKeyboard = new Scanner(System.in);
System.out.println("Introduisez des valeurs positives ou négatives");
for (i=0; i < taille; i++)
{
tableau[i] = readKeyboard.nextInt();
}
bubblesort(tableau);
System.out.println("Tableau trié");
for (i=0; i < taille; i++)
{
System.out.println(tableau[i]);
}
}
public static void swapping(int a, int b)
{
int tmp;
tmp = a;
a = b;
b = tmp;
}
public static void bubblesort(int[] tab)
{
int i, j;
for(i=0; i < tab.length; i++)
{
for(j=1; j < (tab.length-i); j++)
{
if(tab[j-1] > tab[j])
{
swapping(tab[j-1], tab[j]);
}
}
}
}
我的问题是我的值没有在冒泡排序方法中交换。 我应该使用除 void 之外的其他类型的方法还是仅用于交换?
最佳答案
您需要使用以下方法更新您的“交换”方法。
private static void swapping(int[] array,int i,int j) {
int temp = array[i];
array[i] = array[j];
array[j] = temp;
}
关于java - 冒泡排序法+里面的排列法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59656531/