Algorithmen und Datenstrukturen · Middle · Frage 14 von 75

Warum empfiehlt man in vielen Sprachen mid = lo + Math.floor((hi - lo) / 2) statt (lo + hi) / 2?

Antwort zeigen

Richtige Antwort: lo + hi kann ein festes Int überlaufen

Erklärung

In Java oder C++ mit 32-Bit-Ints kann lo + hi das Maximum überschreiten und negativ werden. Zahlen in JavaScript sind Doubles, für Array-Indizes ist das also kein praktisches Problem, aber die Gewohnheit lohnt sich.

Zum Weiterlesen

Fehler in der Frage

Algorithmen und Datenstrukturen · Middle · Frage 14

Teste dich selbst

Mach den Test Algorithmen und Datenstrukturen · Middle: Fragen und Antworten werden gemischt, und am Ende wartet eine Übersicht der Fehler.

Diesen Test machen