冒泡排序法+置换法里面

Bubble Sort Method + Permutation Method Inside

这个练习我需要一些帮助。 我必须创建一个包含冒泡排序的方法,并在该方法中创建另一个交换值的方法。 我试过了:

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 之外的其他类型的方法还是仅用于交换?

在 bubblesort 方法中交换它们而不是调用 swap 方法你会得到你的结果。

您需要使用以下方法更新您的 "swapping" 方法。

 private static void swapping(int[] array,int i,int j) {
    int temp = array[i];
    array[i] = array[j];
    array[j] = temp;
}