Web-Tipp: Eine Lösung in Java von Sebastian Mecklenburg.