Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
modul:m323:learningunits:lu01:aufgaben:tracetable1 [2024/08/06 16:52] – angelegt kmaurizimodul:m323:learningunits:lu01:aufgaben:tracetable1 [2024/08/21 15:27] (aktuell) – [Algorithmus] kmaurizi
Zeile 9: Zeile 9:
 ===== Anforderungen: ===== ===== Anforderungen: =====
  
-Schreiben Sie eine Funktion namens ''linear_search'', die eine Liste von Ganzzahlen und ein zu suchendes Element als Parameter annimmt. +Verwenden Sie den folgenden Algorithmus der linearen Suche.
-Implementieren Sie den Algorithmus der linearen Suche.+
 Erstellen Sie einen Trace Table, um die Änderung der Variablen während der Ausführung des Algorithmus nachzuvollziehen. Erstellen Sie einen Trace Table, um die Änderung der Variablen während der Ausführung des Algorithmus nachzuvollziehen.
-==== Beispielinput ====+==== Algorithmus ====
 <code python> <code python>
-zahlen = [382, 7, 5] +def linear_search(listeziel): 
-ziel 7 +  for indexwert in enumerate(liste): 
-</code>+    if wert == ziel: 
 +      return index 
 +  return -1
  
-==== Beispieloutput ==== +def main(): 
-<code python> +  zahlen [3, 8, 2, 7, 5] 
-Index des gesuchten Elements: 3+  ziel 
 +  resultat linear_search(zahlen, ziel) 
 +  print(f'Index des gesuchten Elements: {resultat}')
 </code> </code>
  
-===== Lösungsvorlage =====+===== Aufgabe: ===== 
 + 
 +Analysieren Sie den Code Schritt für Schritt. 
 +Erstellen Sie einen Trace Table, der die Variablen ''index'', ''wert'', den Vergleich ''(wert == ziel)'' und das Ergebnis darstellt. 
 +Verwenden Sie die folgende Struktur für den Trace Table: 
 +^ Schritt ^ index ^ wert ^ Vergleich (wert == ziel) ^ Ergebnis (index oder -1) ^ 
 +| | | | | | 
 + 
 + 
 +Füllen Sie den Trace Table basierend auf dem angegebenen Beispiel aus. 
 +==== Beispielinput: ====
  
 <code python> <code python>
-def linear_search(liste, ziel): 
-    for index, wert in enumerate(liste): 
-        if wert == ziel: 
-            return index 
-    return -1 
 zahlen = [3, 8, 2, 7, 5] zahlen = [3, 8, 2, 7, 5]
 ziel = 7 ziel = 7
-resultat = linear_search(zahlen, ziel) 
-print(f'Index des gesuchten Elements: {resultat}') 
 </code> </code>
 +==== Beispieloutput: ====
  
-===== Beispiel für den Trace Table: =====+<code python> 
 +Index des gesuchten Elements: 3 
 +</code> 
 +<WRAP center round info 80%> 
 +Hinweis: 
 +Verwenden Sie den Trace Table, um den Ablauf des Algorithmus zu verfolgen und sicherzustellen, dass die Suche korrekt funktioniert. 
 +</WRAP>
  
-^ Schritt ^ index ^ wert ^ Vergleich (wert == ziel) ^ Ergebnis (index oder -1) ^ +===== Abgabe ===== 
-| 1 | 0 | 3 | Nein | - | +Geben Sie den ausgefüllten Tracetable in Moodle ab.
-| 2 | 1 | 8 | Nein | - | +
-| 3 | 2 | 2 | Nein | - | +
-| 4 | 3 | 7 | Ja | 3 |+
  
-Erklären Sie, was in jedem Schritt passiert und wie der Trace Table die Veränderung der Variablen zeigt, bis das gewünschte Element gefunden wird. +[[https://creativecommons.org/licenses/by-nc-sa/4.0/ch/|{{https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png}}]] (c) Kevin Maurizi 
- +
-<WRAP center round info 80%> +
-Eigenschaften der linearen Suche: +
- +
-Die Suche ist einfach zu implementieren und funktioniert gut bei kleinen oder unsortierten Listen. +
-Der Algorithmus durchsucht die Liste sequentiell, was im schlimmsten Fall O(n) Vergleiche erfordert. +
-Wenn das Element gefunden wird, wird der Index zurückgegeben, andernfalls -1. +
-</WRAP>+
  • modul/m323/learningunits/lu01/aufgaben/tracetable1.1722955963.txt.gz
  • Zuletzt geändert: 2024/08/06 16:52
  • von kmaurizi