Du befindest dich hier: FSI Informatik » Prüfungsfragen und Altklausuren » Prüfungen im Bachelor-Studium (1. - 5. Semester) » aud » Aufgabe 1 - Wissensfragen

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige ÜberarbeitungVorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
Nächste ÜberarbeitungBeide Seiten, nächste Überarbeitung
pruefungen:bachelor:aud:loesungws13 [15.03.2018 13:39] Evrenpruefungen:bachelor:aud:loesungws13 [04.04.2019 11:16] Nico Hambauer
Zeile 90: Zeile 90:
     }     }
 } }
 +//Anmerkung: hier wird allerdings immer der gleiche hashcode fuer einen String s verwendet. Heisst wenn ich String x (...equals(s)) einfuege, bleibt hs gleich also landen gleiche Strings immer im gleichen Bucket!!! Also wodurch 
 +//sollte der String in einem anderen Bucket landen? Bedeutet erstere Implementierung reicht fuer diese Implementierung voellig aus!
 +//Auserdem wuerde der platz auch kaum reichen auf der Angabe fuer eine Implementierung mit dieser Fehlerbeachtung
 </code>   </code>  
  
Zeile 167: Zeile 170:
  
         for (int i = 0; i < s.length(); i++) {         for (int i = 0; i < s.length(); i++) {
-            if (curr.children[s.charAt(i)] == null) { +            int charIndex = s.charAt(i) - 'A'; 
-                curr.children[s.charAt(i)] = new Trie();+ 
 +            if (curr.children[charIndex] == null) { 
 +                curr.children[charIndex] = new Trie();
             }             }
-            curr = curr.children[s.charAt(i)];+            curr = curr.children[charIndex];
         }         }
         curr.myString = s;         curr.myString = s;
Zeile 182: Zeile 187:
  
 <code java> <code java>
-void printSorted(){ +void printSorted() { 
-   if(myString != null) { +    Trie curr = this; 
-      System.out.println(myString); +     
-   +    if (curr.myString != null) { 
-   for(int i=0; i < 26; i++){ +        System.out.println(curr.myString); 
-      if(children[i] != null) { +    
-         children[i].printSorted(); + 
-      +    for (int i = 0; i < curr.children.length; i++) { 
-   }+        if (curr.children[i] != null) { 
 +            curr.children[i].printSorted(); 
 +        
 +    }
 } }
 </code> </code>