listen:trennungstrukturdaten:nteselementloesung:start
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
listen:trennungstrukturdaten:nteselementloesung:start [2024/09/19 07:41] – angelegt Martin Pabst | listen:trennungstrukturdaten:nteselementloesung:start [Unbekanntes Datum] (aktuell) – gelöscht - Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Methode gibDenNtenKunden(): | ||
- | < | ||
- | <div class=" | ||
- | |||
- | <script type=" | ||
- | Supermarktkasse s = new Supermarktkasse(); | ||
- | s.hintenAnstellen(new Kunde(" | ||
- | s.hintenAnstellen(new Kunde(" | ||
- | s.hintenAnstellen(new Kunde(" | ||
- | s.hintenAnstellen(new Kunde(" | ||
- | |||
- | println(s.gibDenNtenKunden(2).name); | ||
- | |||
- | |||
- | class Supermarktkasse { | ||
- | | ||
- | | ||
- | |||
- | void hintenAnstellen(Kunde kunde) { | ||
- | if(anfang == null) { | ||
- | | ||
- | ende = anfang; | ||
- | | ||
- | } | ||
- | |||
- | Knoten neuerKnoten = new Knoten(kunde); | ||
- | ende.setNachfolger(neuerKnoten); | ||
- | ende = neuerKnoten; | ||
- | |||
- | } | ||
- | |||
- | Kunde erstenEntnehmen() { | ||
- | Knoten erster = anfang; | ||
- | anfang = erster.getNachfolger(); | ||
- | return erster.getDaten(); | ||
- | } | ||
- | |||
- | int getAnzahlIterativ() { | ||
- | if(anfang == null) { | ||
- | | ||
- | } | ||
- | |||
- | int anzahl = 1; | ||
- | Knoten aktuellerKnoten = anfang; | ||
- | while (aktuellerKnoten.getNachfolger() != null) { | ||
- | | ||
- | | ||
- | } | ||
- | |||
- | return anzahl; | ||
- | } | ||
- | |||
- | |||
- | int getAnzahlRekursiv() { | ||
- | if(anfang == null) return 0; | ||
- | return anfang.getAnzahl(); | ||
- | } | ||
- | |||
- | Kunde gibDenNtenKunden(int n) { | ||
- | if(n == 0) return anfang.getDaten(); | ||
- | return anfang.gibDenNtenKunden(n); | ||
- | } | ||
- | } | ||
- | |||
- | class Knoten { | ||
- | | ||
- | Kunde daten; | ||
- | |||
- | | ||
- | this.daten = kunde; | ||
- | } | ||
- | |||
- | int getAnzahl() { | ||
- | if(nachfolger == null) return 1; | ||
- | return nachfolger.getAnzahl() + 1; | ||
- | } | ||
- | |||
- | | ||
- | return nachfolger; | ||
- | } | ||
- | |||
- | void setNachfolger(Knoten nachfolger) { | ||
- | this.nachfolger = nachfolger; | ||
- | } | ||
- | |||
- | Kunde getDaten() { | ||
- | return daten; | ||
- | } | ||
- | |||
- | Kunde gibDenNtenKunden(int n) { | ||
- | if(n == 1) return daten; | ||
- | if(nachfolger != null) { | ||
- | | ||
- | } | ||
- | |||
- | // Fehler: n ist zu groß! | ||
- | return null; | ||
- | } | ||
- | } | ||
- | |||
- | class Kunde { | ||
- | | ||
- | |||
- | | ||
- | this.name = name; | ||
- | } | ||
- | } | ||
- | </ |
listen/trennungstrukturdaten/nteselementloesung/start.1726731703.txt.gz · Zuletzt geändert: 2024/09/22 04:37 (Externe Bearbeitung)