4.1.12 Erläutern Sie warum die Elemente eines Arrays sortiert sein müssen, bevor binarySearch() ausgeführt wird.

Wie der Name der Methode schon sagt, führt binarySearch( ) eine binäre Suche durch. Dieser Algorithmus teilt die Menge der zu durchsuchenden Elemente zunächst in zwei gleich große Hälften und stellt fest, in welcher der beiden Hälften der Suchbegriff zu finden sein muss. Dazu wird geschaut,ob das Element am Ort der Trennung größer oder kleiner ist als der Suchbegriff. Ist er größer, muss der Suchbegriff in der oberen Hälfte liegen. Ist er kleiner, muss er in der zweiten liegen. Diese Vorgehensweise funktioniert natürlich nur, wenn die Datenmenge aufsteigend sortiert ist. 

Nachdem der Algorithmus eine der Hälften ausgewählt hat, teilt er diese wieder auf und entscheidet, welches der verbliebenen Viertel das richtige ist. So geht es immer weiter und die Datenmenge wird immer kleiner, bis nur noch ein Element übrig ist. Das ist dann das gesuchte.