416b24f900
Ich habe die Aufgabe auf drei verschiedene Weisen implementiert. Den einfachen, naiven Ansatz mit verschachtelten Schleifen, der auch von allen drei Implementierungen der schnellste und speichersparendste ist. Die Variante *func* ist an funktionale Programmierung angelehnt, wobei alle Zwischenergebnisse in Arrays gespeichert werden, was das Programm sehr speicherhungrig macht. In neueren Versionen von Javascript gibt es Iteratoren, mit denen man theoretisch die funktionale Lösung effizienter bauen kann, da die Zwischenergebnisse nicht gespeichert werden. Allerdings hat ein Iterator keinen Prototypen, den man schön um die Methoden erweitern könnte, so dass der Code angenehm lesbar wäre wie in der Variante *func*. |
||
---|---|---|
.. | ||
jo-so_euler87.js | ||
jo-so_euler87_func.js | ||
jo-so_euler87_iterator.js |