Como "swap" dois valores em uma matriz?

user10497264:

Eu estou tentando escrever uma algorithom selecção espécie. Como parte do algorithom eu preciso mudar 2 valores na matriz, eu tentei-o como segue: array[min] = array[i]; array[i] = array[min];Mas eu acredito este não vai funcionar porque array[min]já estará =a array[i]. Então, como posso fazer isso swap? abaixo é o meu código.

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:

Precisa de um local temporário mem para armazenar um valor.

ou seja

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

Acho que você gosta

Origin http://43.154.161.224:23101/article/api/json?id=239324&siteId=1
Recomendado
Clasificación