Ich habe eine Schleife, die nach Werten sucht und sie zu einem Wörterbuch hinzufügt, wenn sie nicht existieren. Diese Überprüfung findet innerhalb einer Schleife statt, so dass es wiederholt auftritt. Wenn das Wörterbuch wächst, stelle ich mir vor, dass es bei jeder Prüfung eine innere Schleife gibt, die teuer wird. In dem Bemühen, meine gesamte Routine zu beschleunigen, frage ich mich, ob ich etwas optimieren sollte? Wenn das so ist, wie?Wiederholtes Überprüfen des gesamten Skriptwörterbuchs über Schleifenfehler? VB6
keycnt = 1
For x = 1 to 500000
STRVAL = returnarray(8, x)
If Not STRDIC.Exists(STRVAL) Then
STRDIC.Add STRVAL, keycnt
keycnt = keycnt + 1
End If
next x
Woher kommt STRVAL? Ohne zu wissen, dass es schwierig ist zu sagen, was du hier fragst? Der Vorteil der Verwendung eines Wörterbuchs besteht jedenfalls darin, dass Schlüsselsuchen sehr schnell sind - typischerweise erfolgt das Nachschlagen über Hash-Schlüssel und nicht nur über eine einfache Schleife. –
Es ist nur ein Wert, den ich basierend auf einem Recordset gesetzt habe, das ich mit ADO verwende. Während ich das Recordset durchlaufe, weise ich den Wert zu. Ich habe das alles entfernt, um meine Frage zu vereinfachen, weil ich wirklich nicht möchte, dass sich jemand darauf konzentriert. –
Ihre Antwort TIM hilft. Das frage ich. Ist es in Ordnung, die Wörterbuchsuche wiederholt zu starten oder gibt es eine bessere Methode? –