|
|
Auch das Programm zur binären Suche liefert immer nur einen Treffer, wenn sich die Zahl mehrfach in der Liste befindet. Wie könnten Sie hier dafür sorgen, dass alle Treffer einer Zahl angezeigt werden? Für diese Aufgabe reicht es, wenn Sie die Änderu |
ds unregistriert
|
|
Auch das Programm zur binären Suche liefert immer nur einen Treffer, wenn sich die Zahl mehrfach in |
|
Meine Frage:
Auch das Programm zur binären Suche liefert immer nur einen Treffer, wenn sich die Zahl mehrfach in der Liste befindet. Wie könnten Sie hier dafür sorgen, dass alle Treffer einer Zahl angezeigt werden?
Für diese Aufgabe reicht es, wenn Sie die Änderungen beschreiben. Die praktische Umsetzung in dem Code ist nicht erforderlich.
Meine Ideen:
binär
|
|
14.07.2024 18:01 |
|
|
as_string
Haudegen
Dabei seit: 06.11.2013
Beiträge: 639
Herkunft: Heidelberg
|
|
Wenn man eines gefunden hat, muss man schauen, ob die Zahlen direkt davor und danach identisch sind. Weil die Liste ja schon vorher sortiert sein muss, findet man damit dann alle.
Also: Treffer mit binärer Suche finden. Dann von der Fundstelle aus so lange nach vorne laufen, wie die Zahlen immer noch ein Treffer sind, danach von der Fundstelle aus nach hinten laufen, so lange, wie es die identischen Zahlen sind.
Man könnte dann den Index des ersten und des letzten Treffers als Trefferbereich zurück geben. Häufig wird dann auch der Index des ersten Treffers und der Index nach dem letzten Treffer zurück geliefert, das ist aber Geschmackssache.
Gruß
Marco
|
|
23.07.2024 16:27 |
|
|
|
|
|
Informatiker Board » Themengebiete » Praktische Informatik » Algorithmen » Auch das Programm zur binären Suche liefert immer nur einen Treffer, wenn sich die Zahl mehrfach in der Liste befindet. Wie könnten Sie hier dafür sorgen, dass alle Treffer einer Zahl angezeigt werden? Für diese Aufgabe reicht es, wenn Sie die Änderu |
|
|