faecher:informatik:oberstufe:java:aoc:aoc2024:day01:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
faecher:informatik:oberstufe:java:aoc:aoc2024:day01:start [04.01.2025 14:33] – [Teil 1] Marco Kuemmelfaecher:informatik:oberstufe:java:aoc:aoc2024:day01:start [22.07.2025 12:36] (aktuell) – [Teil 2] Marco Kuemmel
Zeile 18: Zeile 18:
 ++++ Vorgehensweise | ++++ Vorgehensweise |
   * Initialisiere zwei ArrayLists für Integerzahlen - je eine für die linken und eine für die rechten Zahlen.   * Initialisiere zwei ArrayLists für Integerzahlen - je eine für die linken und eine für die rechten Zahlen.
-  * Iteriere über jede Schleife und füge dabei die linke und rechte Zahl in die jeweile ArrayList hinzu.+  * Iteriere über jede Zeile und füge dabei die linke und rechte Zahl in die jeweile ArrayList hinzu.
   * Sortiere beide Arrays.   * Sortiere beide Arrays.
-  * Merke dir nun die akkumulierenden Differenzen (beginnend mit 0).+  * Merke dir nun die akkumulierenden ("aufaddierenden"Differenzen (beginnend mit 0).
   * Iteriere über jedes Listenelement: Addiere zur Lösung (den Differenzen) den **Betrag** (''Math.abs(...)'') der Differenz der linken und der rechten Zahl.   * Iteriere über jedes Listenelement: Addiere zur Lösung (den Differenzen) den **Betrag** (''Math.abs(...)'') der Differenz der linken und der rechten Zahl.
   * Nach dem Schleifendurchlauf kannst du die Differenzen ausgeben/zurückgeben.   * Nach dem Schleifendurchlauf kannst du die Differenzen ausgeben/zurückgeben.
Zeile 55: Zeile 55:
  
 ++++ Vorgehensweise | ++++ Vorgehensweise |
-  * Die ersten Schritte bis inklusive dem zeilenweisen Einlesen alles Zahlen in zwei ArrayLists ist identisch! Anschließend muss die Berechnung aber anders ablaufen.+  * Die ersten Schritte bis inklusive dem zeilenweisen Einlesen aller Zahlen in zwei ArrayLists ist identisch! Anschließend muss die Berechnung aber anders ablaufen.
   * Die Zahlen müssen nun **nicht** sortiert werden.   * Die Zahlen müssen nun **nicht** sortiert werden.
   * Iteriere in einer Schleife über alle linken Zahlen. Pro linker Zahl iterierst du in einer weiteren Schleife über **alle** rechten Zahlen und vergleichst, ob die link Zahl mit einer der rechten Zahlen übereinstimmt. **Wichtig:** Du musst hier zum Vergleichen mit ''equals(...)'' arbeiten - also: ''linkeZahl.equals(rechteZahl)''. Zähle die Anzahl der Übereinstimmungen. Anschließend addierst du das Produkt der Übereinstimmungen und der linken Zahl zum Ergebnis.   * Iteriere in einer Schleife über alle linken Zahlen. Pro linker Zahl iterierst du in einer weiteren Schleife über **alle** rechten Zahlen und vergleichst, ob die link Zahl mit einer der rechten Zahlen übereinstimmt. **Wichtig:** Du musst hier zum Vergleichen mit ''equals(...)'' arbeiten - also: ''linkeZahl.equals(rechteZahl)''. Zähle die Anzahl der Übereinstimmungen. Anschließend addierst du das Produkt der Übereinstimmungen und der linken Zahl zum Ergebnis.
  • faecher/informatik/oberstufe/java/aoc/aoc2024/day01/start.1736001227.txt.gz
  • Zuletzt geändert: 04.01.2025 14:33
  • von Marco Kuemmel