どのように「スワップ」配列の二つの値に?

user10497264:

私は、選択ソートalgorithomを記述しようとしています。私は、配列内の2つの値を切り替える必要がありalgorithomの一環として、次のように私はそれをしようと試みた。array[min] = array[i]; array[i] = array[min];しかし、ので、私は、この文句を言わない仕事を信じてarray[min]、既にでしょう=array[i]だから私は、このスワップをどのように行うのですか?ベローは私のコードです。

static int[] array = {3, 2, 1, 4, 5, 6};

static int n = 5;
static int temp;

        for (int i = 0; i<=5; i++) {
        int min = 0;

        for (int j = i+1; j<=n; j++) {
            //System.out.println(j);

            if (array[j]<array[min]) {
                min = j;
            }

            if (min != i) {
                array[min] = array[i];
                array[i] = array[min];
            }
        }
    }
CodeFromthe510:

値を格納するために一時MEMの場所が必要です。

すなわち

temp = array[min]    
array[min] = array[i]    
array[i] = temp

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=239326&siteId=1