Hash-Table in purem AutoIt

  • Eine Datenstruktur, welche ich nahezu täglich verwende (z.B. über das Scripting.Dictionary-Objekt) ist die Hash-Tabelle.

    Wie diese funktioniert war mir zwar in den absoluten Grundzügen klar, aber im Grunde war es dann eben doch eher eine Art Blackbox für mich.

    Das wollte ich nun ändern und ein tieferes Verständnis für die Funktionsweise einer Hash-Tabelle erlangen.
    Was gibt es da für einen besseren Ansatz als einfach mal selbst eine komplette Hash-Tabelle in AutoIt zu implementieren?

    Herausgekommen ist dabei folgende UDF.
    Diese ist ausdrücklich lediglich als Übungsprojekt zum Verständnis gedacht und kann nicht mit z.B. Scripting.Dictionary mithalten (habe ich auch gar nicht erst getestet). (wie sich herausgestellt hat, kann diese bei einer großen Elementanzahl eben DOCH mithalten).

    Einige Dinge bergen auch noch deutliches Optimierungspotential (z.B. eine vernünftige Hash-Funktion) und sind erst einmal nur für das grundsätzliche Funktionieren implementiert.

    Wer sich jedoch wie ich ein bisschen mehr mit Hash-Tabellen auseinander setzen möchte, dem kann eventuell diese UDF beim Verständnis ein wenig weiterhelfen.

    Kurzes Beispiel damit jeder sieht, dass sie tatsächlich funktioniert: