class MyClass {
public static void main (String [] args) {
start();
}
private void start() {
// do something
// ask user if he want to start again
if (needStartAgain == true) {
start();
}
}
}
Вот хорошая книжка. www.ozon.ru/context/detail/id/29561974
Несмотря на название, в ней очень много хороших задач. Есть ответы с подробным объяснением. Пробуйте вначале решить самостоятельно, если уж совсем тупик, то читайте объяснение и затем не глядя на примеры кода, реализуйте алгоритм.