Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem JAVA prohození matice podle vedlejší diagonály

Měl jsem udělat řazení matice podle posledního řádku. Tedy že největší prvek v posl. řádku bude první, a takhle sestupně nebo vzestupně. Udělal jsem to takhle, nešlo by to nějak jednosušejc?
public void serad(boolean vzestupne, int rozmer) {

int pocet = ((rozmer * rozmer) - rozmer) / 2;
int[] arrNad = new int[pocet];
int[] arrPod = new int[pocet];
int pNad = 0, pPod = 0;

for(int x = 0; x < rozmer; x++) {
for(int y = 0; y < rozmer; y++) {
if (y > x) {
arrNad[pNad++] = matice[x][y];
} else if (x > y) {
arrPod[pPod++] = matice[x][y];
}
}
}

sort(arrNad, vzestupne);
sort(arrPod, !vzestupne);

pNad = 0; pPod = 0;
for(int x = 0; x < rozmer; x++) {
for(int y = 0; y < rozmer; y++) {
if (y > x) {
matice[x][y] = arrNad[pNad++];
} else if (x > y) {
matice[x][y] = arrPod[pPod++];
}
}
}

}

private void sort(int[] array, boolean vzestupne) {
//TODO nějaká implementace sortingu

Arrays.sort(array);
if (!vzestupne) {
for (int left = 0, right = array.length - 1; left < right; left++, right--) {
int temp = array[left];
array[left] = array[right];
array[right] = temp;
}
}
}

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny