ну в интернете довольно много примеров.
смотрим описание алгоритма
http://ru.wikipedia.org/wiki/%D0%A1%...B8%D0%B5%D0%BC
смотрим реализацию
http://www.vogella.com/articles/Java...t/article.html
разбираемся...
конечно странное условие не использовать массивы, но это тоже не проблема просто заменяем массивы файлами, и храним числа в них, двоих как раз будет достаточно.