Die high_esolution_clock ist hochauflösend, aber nicht sehr genau, ganz besonders wenn sich der Takt der Kerne auch noch ändert, der Tag hat da nicht unbedingt genau 24 Stunden. Die ist auch zwischen den Kernen einer CPU nicht genau synchronisiert, man sollte die Thread daher für ein genaues Ergebnis fest an einen Kern binden, sonst kann es bei ganz kurzen Zeiten schlimmstenfalls sogar negative Ergebnisse geben!
Eigene Datenstrukturen zu verwenden kann sich bei der Performance durchaus lohnen, man sollte aber auch aufpassen ob diese dann auch zuverlässig und z.B. auch multithreading tauglich sind! Außerdem haben unterschiedliche Datenstrukturen durchaus unterschiedliche Performance je nachdem wie viele Daten darin gespeichert werden, bei den Tests sollte man dies berücksichtigen, sonst kann man böse daneben liegen.
Eigene Datenstrukturen zu verwenden kann sich bei der Performance durchaus lohnen, man sollte aber auch aufpassen ob diese dann auch zuverlässig und z.B. auch multithreading tauglich sind! Außerdem haben unterschiedliche Datenstrukturen durchaus unterschiedliche Performance je nachdem wie viele Daten darin gespeichert werden, bei den Tests sollte man dies berücksichtigen, sonst kann man böse daneben liegen.