Die Methode public Knoten einfuegenVor (Datenelement dNeu, Datenelement dVergleich) public Knoten einfuegenVor(Datenelement dNeu, Datenelement dVergleich){

Slides:



Advertisements
Ähnliche Präsentationen
der Universität Oldenburg
Advertisements

Vorbereitung: struct knoten { int x; struct knoten *l, *r; } *b, *bh, **bp; b: Zeiger auf Wurzel bh: Hilfszeiger bp: Zeiger auf Zeiger auf knoten b bp.
Klassen - Verkettete Liste -
Claudio Moraga; Gisbert Dittrich
Sortieren mit Binären Bäumen
Java: Dynamische Datentypen
Listen Richard Göbel.
Klassenvariable. Da man für jede Kuh bzw. jede Henne auf dem Markt den gleichen Preis für ein Liter Milch, bzw. den gleichen Preis für ein Ei bekommt,
Polymorphie (Vielgestaltigkeit)
Polymorphie (Vielgestaltigkeit)
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (03 – Verschiedene Algorithmen für dasselbe Problem) Prof. Dr. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (03 – Verschiedene Algorithmen für dasselbe Problem) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (05 – Elementare Datenstrukturen) Prof. Th. Ottmann.
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 6 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.

EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Kapitel 7 Claudio Moraga, Gisbert Dittrich FBI Unido
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
Diskrete Mathematik I Vorlesung 6 Binärer Suchbaum II.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik I Vorlesung Listen-
PRJ 2007/1 Stefan Dissmann Motivation Problem: gleiche Datenstrukturen werden für verschiedene Objekte gebraucht: z.B. Listen von Studierenden, Kunden,
PKJ 2005/1 Stefan Dissmann Rückblick auf 2005 Was zuletzt in 2005 vorgestellt wurde: Klassen mit Attributen, Methoden und Konstruktoren Referenzen auf.
PKJ 2005/1 Stefan Dissmann Klassenhierarchie Person Kunde Goldkunde Lieferant Object.
Einfügen am Ende der Liste Vorher: Nachher:. Einfügen am Ende der Liste //Klasse Knoten public Knoten hintenEinfuegen(Datenelement dneu) { nachfolger.
DVG Methoden 1 Methoden. 2 int dezi = Integer.parseInt(args[0]); boolean vz = (dezi>=0); dezi = Math.abs(dezi); String Bin = ""; do { } while.
DVG Verkettete Listen Verkettete Listen. DVG Verkettete Listen 2 Primitive Datentypen Vorteile: –werden direkt vom Prozessor unterstützt.
Wir müssen also überlegen: Implementierung der Knoten, Implementierung der Kanten, daraus: Implementierung des Graphen insgesamt. Annahme: die Knoteninhalte.
Einführung in die Programmierung Anweisungen und Datentypen
Informatikunterricht mit Java
Inhalt danach. inhalt danach inhalt danach inhalt danach inhalt danach inhalt danach.
Kapitel 2: Datenstrukturen
Template Pattern Richard Göbel.
Einfach verkettete Listen
Einfach verkettete Listen (OOP)
PRJ 2007/1 Stefan Dissmann Verkettete datenstruktur: Liste Problem: Liste, die eine beliebige Zahl von Elementen verwaltet Operationen: Erzeugen, Anfügen,
Rekursive Funktionen (Fakultät)
Rekursion mit Listen: Quicksort
Abteilung für Telekooperation Übung Softwareentwicklung 1 für Wirtschaftsinformatik Dr. Wieland Schwinger
1. Die rekursive Datenstruktur Liste 1.1 Warteschlange (Queue)
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
1.2 Trennung von Struktur und Inhalt
1.5 Das Entwurfsmuster Kompositum
Die Methode public Datenelement getEnde (Datenelement d) Ziel: //Klasse Knoten public Datenelement getEnde(Datenelement d){ return nachfolger.getEnde(inhalt);
Aufruf einer Methode eines Objektes vom Typ „Bruch“
Einfach und doppelt verkettete Listen in JAVA by Jens Weibler
Institut für Wirtschaftsinformatik – Software Engineering, JKU Linz 1 Thomas Hilpold: Algorithmen und Datenstrukturen SS 2005 Mag.Th. Hilpold u. Dr. A.Stritzinger.
SWE1 / Übung 10 ( ) Rekursion Binärbäume.
early binding (frühe Bindung) late binding (späte Bindung)
Mag. Thomas Hilpold, Universität Linz, Institut für Wirtschaftsinformatik – Software Engineering 1 Algorithmen und Datenstrukturen 1 SS 2002 Mag.Thomas.
Institut für Kartographie und Geoinformation Diskrete Mathematik I Vorlesung Binärer Suchbaum I-
Diskrete Mathe Diskrete Mathematik I Listen Vorlesung 4.
Programmiersprachen II Fortsetzung Datenstrukturen Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
1 // Verkettete Liste 2 // demonstriert verkettete Listen und // Rekursion // (Einfügen am "Fuß") // #include struct Liste { int Element; Liste *weiter;
Tutorium Software-Engineering SS14 Florian Manghofer.
Tutorium Software-Engineering SS14 Florian Manghofer.
Eine Vokabelschlange. Schlangen in Anwendungsprogrammen Die Piktogramme von Personen, mit denen wir ursprünglich die Datenstruktur Schlange eingeführt.
Rekursion – Speicherverwaltung
Zwei Denkansätze zur Klasse Schlange
Der Abschluss einer Schlange
Löschen im Suchbaum.
1. Die rekursive Datenstruktur Liste 1.3 Rekursive Funktionen
1. Die rekursive Datenstruktur Liste 1.5 Das Entwurfsmuster Kompositum
1. Die rekursive Datenstruktur Liste 1
3. Die Datenstruktur Graph 3.2 Repräsentation von Graphen
Grundkurs Informatik 11-13
1. Die rekursive Datenstruktur Liste 1
Kara: act()-Methode.
Heapsort-Algorithmus
2. Die rekursive Datenstruktur Baum 2.3 Baum und Kompositum
 Präsentation transkript:

Die Methode public Knoten einfuegenVor (Datenelement dNeu, Datenelement dVergleich) public Knoten einfuegenVor(Datenelement dNeu, Datenelement dVergleich){ if(inhalt != dVergleich){ if(nachfolger !=null){ nachfolger=nachfolger.einfuegenVor(dNeu, dVergleich); } else { hintenEinfuegen(dNeu); } return this; } else{ Knoten kNeu; kNeu = new Knoten(dNeu, this); return kNeu; }

Die Methode public Knoten einfuegenVor (Datenelement dNeu, Datenelement dVergleich) dNeu soll vor d3 eingefügt werden. In k1 erfolgt der rekursive Aufruf nachfolger = nachfolger.einfuegenVor(dNeu, dVergleich) (Wird noch nicht ausgewertet, da das Rekursionsende noch nicht erreicht ist.)

Die Methode public Knoten einfuegenVor (Datenelement dNeu, Datenelement dVergleich) In k2 erfolgt der rekursive Aufruf nachfolger = nachfolger.einfuegenVor(dNeu, dVergleich) (Wird noch nicht ausgewertet, da das Rekursionsende noch nicht erreicht ist.)

Die Methode public Knoten einfuegenVor (Datenelement dNeu, Datenelement dVergleich) d3 ist das Datenelement, vor das dNeu eingefügt werden soll. Der Aufruf nachfolger = nachfolger.einfuegenVor(dNeu, dVergleich) wird übersprungen, da inhalt != dVergleich falsch ist.

Die Methode public Knoten einfuegenVor (Datenelement dNeu, Datenelement dVergleich) In k3 Knoten kNeu = new Knoten(dNeu, this) erzeugt den neuen Knoten mit k3 (this) als Nachfolger. return kNeu; Das Rekursionsende ist erreicht.

Die Methode public Knoten einfuegenVor (Datenelement dNeu, Datenelement dVergleich) In k3 Darauf hat k2 gewartet! nachfolger = kNeu; return this; (also k2)

Die Methode public Knoten einfuegenVor (Datenelement dNeu, Datenelement dVergleich) Darauf hat k1 gewartet! nachfolger = k2; return this; (also k1)

Die Methode public Knoten einfuegenVor (Datenelement dNeu, Datenelement dVergleich) In Liste muss die Methode so aufgerufen werden: anfang=anfang.einfuegenVor(dNeu,dVergleich); anfang.einfuegenVor(dNeu,dVergleich) liefert k1 zurück, also anfang = k1;