/** * get the next guess, without checking any matching * * @return the next guess */ protected Guess nextGuess() { Guess currentGuess = nextGuess; nextGuess = currentGuess.nextGuess(manager); return currentGuess; }
private Guess nextIntervalStart(Color[] colors) { final int index = colors.length - 1; int step = NR_COLORS / nrThreads; if (step == 0) { step = 1; } while (step > 0) { if (manager.thereIsNextColor(colors[index])) { colors[index] = manager.nextColor(colors[index]); step--; } else { return Guess.none; } } Guess guess = new Guess(colors); while (!guess.isUnique()) { guess = guess.nextGuess(manager); } return guess; } }