Angenommen, ich implementiere etwas Einfaches wie das Durchsuchen einer sortierten Liste / eines Arrays. Die Funktion (in c #) würde ungefähr so aussehen:
static int FindIndex(int[] sortedList, int i);
Ich könnte dies in Bezug auf die Funktionalität implementieren und testen, aber aus offensichtlichen Gründen würde ich normalerweise eine binäre Suche einer linearen Suche vorziehen oder etwas absichtlich Dummes.
Meine Frage lautet also: Sollten wir versuchen, Tests zu schreiben, die die Leistung in Bezug auf die algorithmische Komplexität garantieren, und wenn ja, wie?
Ich habe angefangen, Argumente auf beiden Seiten des "sollten Sie" -Teils dieser Frage vorzubringen, aber ich würde gerne sehen, was die Leute sagen, ohne meine Argumente, um sie dazu aufzufordern.
In Bezug auf "wie" wird das sehr interessant :) Sie können sehen, wie der Vergleichsoperator parametrisiert wird und ein Test durchgeführt wird, dessen Vergleichsoperator Vergleiche oder ähnliches zählt. Aber nur weil du kannst, heißt das nicht, dass du ...
Hat jemand dies (wahrscheinlich) in Betracht gezogen? Vielen Dank.