Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Java - nejlepší algoritmus pro porovnání tří prvků.

Dobrý den,

Má 3 comboboxy, v každém z nich mám na výběr 4 barvy.

Jenže chci, aby každý měl svoji vlastní barvu - každá za 4 barev by byla vybrána pouze jednou.

Takže při každé změně potřebuji srovnat všechny 3 comboboxy.

Pomocí metody getSelectedIndex() porovnám, jestli se shoduje 1. s 2., 1. s 3. a 2. s 3.

Tento způsob je logický a srozumitelný, ale připadne mi zbytečně složitý.

Napadl mě tenhle algoritmus.

int color_value[] = new int[3];
color_value[0] = combo1.getSelectedIndex();
color_value[1] = combo2.getSelectedIndex();
color_value[2] = combo3.getSelectedIndex();
java.util.Arrays.sort(color_value);
if (color_value[0] != color_value[1] && color_value[1] != color_value[2]) {
...
}

Vytvořím pole, do něj naházím všechny 3 hodnoty, pole seřadím a teď mi stačí pouze srovnat 1. s 2. a 2. s 3.

Ale potřebuji vědět, jestli neexistuje nějaký lepší a hlavně jednodušší algoritmus.

Předem díky.

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
Díky za snahu, ale neřešte to, lepší algoritmus než ty tři podmínky asi neexistuje. poslední
MichalDM 24.02.2017 10:52
MichalDM

Zpět do poradny Odpovědět na původní otázku Nahoru