Bud budes za kazdym prechadzat cele pole, a kontrolovat zhodu, ak je zhoda brakens vnutorny cyklus a nastavis nejaky boolean na false ktory riadi vonkajsi cyklus.
List<Double> numbers
boolean generateNexy = true;
do{
// vygenerujes cislo x
for(int i=0; i<numers.size(); i++){
if(numbers.get(i).doubleValue()==x){
generateNext = false;
}
else{
numbers.add(new Double(x)); // to iste sa da robit s polom
// ale treba zabezpecit aby si v nom mal dost miesta
}
}
}while(generateNext);
Tak isto sa to da pomocou casto krat spominaneho setu. Ak najdes podobny element v sete ukoncis generovanie.
Alebo ak mas maly pocet cisel ktore budes generovat napr. 1..30, tak sa to da aj pomocou algoritmu, ktory bol spomenuty v rieseni sudoku. Budes jednoducho si uchovavat p a while pojde do tial pokial (v & p) ==0. Vid kontrola jednoho bloku sudoku.