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

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:loesungss13 [23.03.2014 16:11] johnsonpruefungen:bachelor:aud:loesungss13 [13.03.2016 12:11] – Eigene, vorrige Änderungen rückgängig gemacht. Ezekiel15
Zeile 11: Zeile 11:
 **b)** falsch\\ **b)** falsch\\
  
-**c)** true\\ +**c)** true\\  
  
 **d)** falsch\\ **d)** falsch\\
Zeile 128: Zeile 128:
 i) i)
 ^ Buckets ^ 0 ^ 1 ^ 2 ^ 3 ^ 4 ^ 5 ^  ^ Buckets ^ 0 ^ 1 ^ 2 ^ 3 ^ 4 ^ 5 ^ 
-^ Schlüssel | V2 | V4 | V6 | V4 | V3 | V1 | +^ Schlüssel | V2 | V4 | V6 | V5 | V3 | V1 | 
  
 ii) ii)
Zeile 167: Zeile 167:
 <code java> <code java>
 double durchfluss(List<Verteiler> quelleSeite, List<Verteiler> senkeSeite, Verteiler senke){ double durchfluss(List<Verteiler> quelleSeite, List<Verteiler> senkeSeite, Verteiler senke){
-        Verteiler[] ssa = senkeSeite.toArray(new Verteiler[senkeSeite.size()]);      + Verteiler[] ssa = senkeSeite.toArray(new Verteiler[senkeSeite.size()]); 
-        double df = schnittDurchfluss(quelleSeite, senkeSeite); + double df = schnittDurchfluss(quelleSeite, senkeSeite); 
-        if(senkeSeite.size() == 1){          + for(Verteiler v : ssa){ 
-            return df; + if(!v.equals(senke) && senkeSeite.contains(v)){ 
-        } else { + quelleSeite.add(v); 
-            for(int i = 0; i < ssa.length; i++){              + senkeSeite.remove(v); 
-                if(!ssa[i].equals(senke) && !quelleSeite.contains(ssa[i])){ + df = Math.min(df, this.schnittDurchfluss(quelleSeite, senkeSeite)); 
-                    quelleSeite.add(ssa[i]); + senkeSeite.add(v); 
-                    ssa[i] = null; + quelleSeite.remove(v); 
-                    ArrayList<Verteiler> s = new ArrayList<Verteiler>(); +
-                    for(Verteiler v : ssa){ +
-                        if(v != null){ + return df;  
-                            s.add(v); +}
-                        } +
-                    } +
-                    df = Math.min(df, durchfluss(quelleSeite, s, senke)); +
-                    ssa[i] = quelleSeite.get(quelleSeite.size() - 1); +
-                    quelleSeite.remove(quelleSeite.get(quelleSeite.size() - 1));                     +
-                } +
-            +
-               +
-        return df; +
-    +
 </code> </code>