Ist es schneller, einen Verweis auf ein Objekt aus dem Wörterbuch zu kopieren oder direkt auf das Wörterbuch zuzugreifen?

8

Die Frage ist einfach

ist dieser Code

%Vor%

genauso schnell wie dieser Code

%Vor%

gesunden Menschenverstand sagen Sie mir, dass es schneller sein sollte, die Referenz im Wörterbuch einmal nachzuschlagen und es irgendwo zu speichern, so dass es nicht mehrmals nachgeschlagen werden muss, aber ich weiß nicht wirklich, wie das Wörterbuch funktioniert.

Also ist es schneller oder nicht? Und warum?

    
Petr 15.03.2013, 15:02
quelle

3 Antworten

7

Ja, Sie haben Recht. Ihr erster Ansatz sucht das Wörterbuch 4 mal, während der zweite es einmal tut. Die zweite ist definitiv besser.

Im realen Leben ist eine Wörterbuchsuche jedoch lächerlich schnell. Wenn Sie also kein umfangreiches Wörterbuch haben, wird der Unterschied nicht auffallen, vielleicht sogar nicht messbar.

    
Joe Enos 15.03.2013, 15:05
quelle
6

Joe hat absolut Recht, aber als ob es nicht genug wäre, habe ich einen einfachen offensichtlichen Test gemacht:

%Vor%

Auf meinem Rechner gibt dies aus:

%Vor%

Wenn Sie nur eine Suche durchführen, wird die Gesamtzeit für große Zahlen definitiv reduziert.

    
Alexander Tsvetkov 15.03.2013 15:37
quelle
1

Ich war neugierig. Der folgende Komponententest zeigt (möglicherweise), dass die zweite Methode etwa 25% schneller ist. (121 ms gegenüber 91 ms). Der Wechsel von 6 Feldern zu 2 verengt die Lücke, 40 ms gegenüber 33 ms. Ich sage möglicherweise, da ich dies ziemlich schnell geschrieben habe und ich bin nicht überzeugt, dass es immun ist, einige Nebenwirkungen zu messen, aber es zeigt das erwartete Verhalten, also warum frag es. (hah).

%Vor%     
Mikeb 15.03.2013 15:32
quelle

Tags und Links