Ich plane, in diesem Herbst ein „Experiment“ durchzuführen, wenn ich meine Algorithmusklasse unterrichte, mit einem sehr alten, begrenzten Computer (Hauptbeschränkungsfaktor ist wahrscheinlich Speicher - möglicherweise nur 16 KB) und einem modernen / Standard-Computer. Die Idee war, ein Problem mit einem Polynom zu lösen, das auf dem langsamen Computer läuft, und einem exponentiellen auf dem schnellen Computer (und natürlich den langsamen zu gewinnen).
Das Problem besteht darin, ein geeignetes Problem zu finden - eines, bei dem die Laufzeiten für Fälle mit sehr begrenzter Größe sehr unterschiedlich sind (und bei denen die Datenstrukturen vorzugsweise recht einfach sind; der primitive Computer ist… primitiv). Ich habe ursprünglich über Sortieralgorithmen nachgedacht (z. B. quadratisch oder linear), aber das würde viel zu große Instanzen erfordern (es sei denn, ich habe mich zum Beispiel für Bogosort entschieden).
Im Moment ist das einzige (ziemlich langweilige) Beispiel, an das ich gedacht habe, die Berechnung von Fibonacci-Zahlen auf intelligente und dumme Weise. Es wäre schön, wenn etwas weniger müde / überbeansprucht wäre und vorzugsweise etwas (halb-) offensichtlich Nützliches. Irgendwelche Ideen / Vorschläge?