SortedCollection vs SortedContainers

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Benutzeravatar
__blackjack__
User
Beiträge: 14303
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Scholastik: Bei Pypy muss man daran denken, dass das ein JIT-Compiler ist der ein bisschen Aufwärmzeit braucht. Das hatte __deets__ auch schon geschrieben. Der Compiler analysiert was Funktionen machen und übersetzt die dann in Maschinensprache. Das heisst beim ersten Aufruf von Funktionen sind die noch nicht schneller, weil da erst einmal die Python-Variante ausgeführt wird und *zusätzlich* geschaut wird was die mit welchen Datentypen so macht. Daraufhin wird dann Maschinencode erzeugt, und erst beim nächsten Aufruf mit passenden Typen wird *der* dann ausgeführt. Das sollte man beim Schreiben, oder mindestens beim Bewerten von Tests berücksichtigen.

Generell würde ich auch für solche Mikrotests nicht selbst eine Schleife schreiben die das millionenmal macht, sondern das `timeit`-Modul verwenden.
„Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.“ — Brian W. Kernighan
Antworten