Zum Inhalt springen

Aufgabe 18 - Lineare Suche

Zu Zen-Modus wechseln

Sie implementieren die lineare Suche selbst. Dabei lernen Sie, wann ein Algorithmus aufhören darf und wie man seinen Aufwand grob abschätzt (siehe Kapitel Suchen und Sortieren).

In dieser Übung üben Sie:

  • Implementieren: einen Suchalgorithmus eigenständig schreiben.
  • Abbrechen: eine Schleife beim Treffer sauber beenden.
  • Abschätzen: Vergleiche zählen und über den Aufwand nachdenken.
  • VS Code, Browser-Konsole.

Das Fundbüro der Schule führt eine Liste:

const fundsachen = ["Regenschirm", "Federpennal", "Kopfhörer", "Jacke",
"Trinkflasche", "Handschuh", "Taschenrechner", "Mütze"];
  1. Schreiben Sie suche(liste, gesucht). Die Funktion liefert den Index des ersten Treffers oder -1. Ohne indexOf und includes; die Schleife schreiben Sie selbst.
  2. Die Schleife muss beim Treffer sofort aufhören, nicht weiterlaufen.
  3. Testen Sie mit "Kopfhörer" (vorne), "Mütze" (hinten) und "Skateboard" (nicht vorhanden).
  1. Erweitern Sie die Funktion: Sie zählt intern die Vergleiche mit und gibt sie mit aus ("Kopfhörer" nach 3 Vergleichen gefunden).
  2. Füllen Sie eine Tabelle für die drei Tests aus Teil A: gesuchter Begriff, Position, Anzahl Vergleiche.
  3. Beantworten Sie als Kommentar: Wie viele Vergleiche braucht die Suche schlimmstenfalls bei 8 Einträgen? Bei 1000? Bei n?
  1. Die Suche soll Groß- und Kleinschreibung ignorieren ("kopfhörer" findet "Kopfhörer").
  2. Zusatz: sucheAlle(liste, teiltext) findet alle Einträge, die den Teiltext enthalten.

Projektordner mit Suchfunktionen, Testausgaben und der Vergleichs-Tabelle samt Antworten aus Teil B.