Du befindest dich hier: FSI Informatik » Prüfungsfragen und Altklausuren » Prüfungen im Bachelor-Studium (1. - 5. Semester) » aud » Forendiskussionen, bei Fragen bitte:
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Beide Seiten, vorherige ÜberarbeitungVorherige ÜberarbeitungNächste Überarbeitung | Vorherige ÜberarbeitungNächste ÜberarbeitungBeide Seiten, nächste Überarbeitung | ||
pruefungen:bachelor:aud:loesungws18 [17.06.2019 12:42] – gabriel2029 | pruefungen:bachelor:aud:loesungws18 [26.06.2019 14:18] – TOKAMAK | ||
---|---|---|---|
Zeile 56: | Zeile 56: | ||
for (int r = row - 1; r <= row + 1; r++) { | for (int r = row - 1; r <= row + 1; r++) { | ||
// Betrachte, ob das angeforderte Feld überhaupt im Quadrat liegt | // Betrachte, ob das angeforderte Feld überhaupt im Quadrat liegt | ||
- | if (r >= 0 && r < n) { | + | if (col < n - 1 && |
// Die erreichte Summe wird genau dann maximal, wenn man | // Die erreichte Summe wird genau dann maximal, wenn man | ||
// den Weg wählt, bei dem man von diesem Nachbarfeld die | // den Weg wählt, bei dem man von diesem Nachbarfeld die | ||
Zeile 73: | Zeile 73: | ||
< | < | ||
- | public | + | public int maxPathDP(int[][] a) { |
int n = a.length; | int n = a.length; | ||
int best = 0; | int best = 0; | ||
Zeile 107: | Zeile 107: | ||
| | ||
//Suche das Maximum in der ersten Spalte | //Suche das Maximum in der ersten Spalte | ||
- | for(int i = 0; i < mem.length; i++) { | + | for(int i = 0; i < n; i++) { |
if(mem[i][0] > best) { | if(mem[i][0] > best) { | ||
best = mem[i][0]; | best = mem[i][0]; | ||
Zeile 119: | Zeile 119: | ||
=== a) === | === a) === | ||
^ Fach ^ k // | ^ Fach ^ k // | ||
- | | 0 | E => K | + | | 0 | E => U |
| 1 | | 1 | ||
| 2 |? => | | | 2 |? => | | ||
Zeile 156: | Zeile 156: | ||
private long helperNums(T v, long num) { | private long helperNums(T v, long num) { | ||
// Füge Preorder-Knoten hinzu | // Füge Preorder-Knoten hinzu | ||
- | nums.add(v, num); | + | nums.put(v, num); |
| | ||
// Nächster Knoten bekommt eine um eins höhere Nummerierung | // Nächster Knoten bekommt eine um eins höhere Nummerierung | ||
Zeile 181: | Zeile 181: | ||
< | < | ||
private long helperLows(T v) { | private long helperLows(T v) { | ||
- | long low = nums.get(v); | + | long low = nums.get(v); |
| | ||
for (T w : sptree.get(v)) { | for (T w : sptree.get(v)) { | ||
- | long wLow = helperLows(w); | + | long wLow = helperLows(w); |
if (wLow >= nums.get(v)) { | if (wLow >= nums.get(v)) { | ||
+ | // Fall, in dem Knoten zu der Menge der Artikulationspunkte hinzugefügt werden muss | ||
aps.add(v); | aps.add(v); | ||
} | } | ||
Zeile 192: | Zeile 193: | ||
| | ||
for (T w : graph.get(v)) { | for (T w : graph.get(v)) { | ||
- | low = Math.min(low, | + | low = Math.min(low, |
} | } | ||
| | ||
Zeile 233: | Zeile 234: | ||
< | < | ||
public void sort(List< | public void sort(List< | ||
- | sort(int, 0, new BucketPool(45)); | + | sort(in, 0, new BucketPool(45)); |
} | } | ||
Zeile 239: | Zeile 240: | ||
List< | List< | ||
if (charPos < 5) { | if (charPos < 5) { | ||
- | | + | |
- | | + | Iterator< |
- | for (Iterator< | + | while (it.hasNext()) { |
String nextString = it.next(); | String nextString = it.next(); | ||
char c = nextString.charAt(charPos); | char c = nextString.charAt(charPos); | ||
Zeile 247: | Zeile 248: | ||
// Nur Elemente, die an dieser Stelle einen Char != 0 haben, | // Nur Elemente, die an dieser Stelle einen Char != 0 haben, | ||
// in andere Liste schieben | // in andere Liste schieben | ||
- | if (c >= '1' && c <= '9') { | + | if (c != '0') { |
+ | bs.get(Character.getNumericValue(c)).add(nextString); | ||
it.remove(); | it.remove(); | ||
- | buckets.get(c - ' | ||
} | } | ||
} | } | ||
Zeile 261: | Zeile 262: | ||
sort(bucket, | sort(bucket, | ||
| | ||
- | /* Zum Verstädnis: | + | /* Zum Verständnis: |
* Dadurch, dass die Strings in erster Priorität nach dem Char | * Dadurch, dass die Strings in erster Priorität nach dem Char | ||
* an Position c sortiert sind, wird die Liste korrekt sortiert: | * an Position c sortiert sind, wird die Liste korrekt sortiert: |