Rekursion – Speicherverwaltung

Slides:



Advertisements
Ähnliche Präsentationen
Klassen - Verkettete Liste -
Advertisements

Informatik II – Kapitel 11
Timm Grams Hochschule Fulda Fachbereich Elektrotechnik und Informationstechnik Rekursive Funktionen in C © Timm Grams, Fulda, (korr.: )
Rekursionen Erstellt von J. Rudolf im November 2001 /
„Such-Algorithmen“ Zusammenfassung des Kapitels 11
Rekursion Was ist Rekursion? Was sind rekursive Methoden?
Imperative Programmierung
Objektorientierte Programmierung Definition von Klassen
der Universität Oldenburg
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (03 – Verschiedene Algorithmen für dasselbe Problem) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (10 - Suchverfahren) T. Lauer.
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.
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
Imperative Programmierung Funktionen und Parameter
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-
PKJ 2005/1 Stefan Dissmann Methoden (Motivation) Idee: Identische Programmabschnitte zusammenfassen und mit einem Namen versehen Vorteile: Übersichtlichkeit.
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 Zusammenfassung Vorwoche Methoden sind mit einem Namen versehene Programmabschnitte besitzen Rückgabetyp, Namen, Parameterliste.
Die Methode public Knoten einfuegenVor (Datenelement dNeu, Datenelement dVergleich) public Knoten einfuegenVor(Datenelement dNeu, Datenelement dVergleich){
DVG Methoden 1 Methoden. 2 int dezi = Integer.parseInt(args[0]); boolean vz = (dezi>=0); dezi = Math.abs(dezi); String Bin = ""; do { } while.
Thema: Fibonacci-Zahlen
Struktogramme IF-ELSE FOR – Schleife
Rekursion Richard Göbel.
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,
Grundkonzepte Java - Klassendefinition
Rekursive Funktionen (Fakultät)
Informatik 1 Übung 8. NACHBESPRECHUNG Übung 8 Rekursion Existiert Weg von A nach B?
Rekursion mit Listen: Quicksort
Einführung in die Programmierung
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
BIT – Schaßan – WS 02/03 Basisinformationstechnologie HK-Medien Teil 1, 11.Sitzung WS 02/03.
Einführung in die Programmierung Wintersemester 2009/10 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Programmierung
Einführung in die Programmierung Wintersemester 2009/10 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Grundlagen der Informatik 4 Lehrstuhl für Betriebssysteme 1 Wie werden Funktionen realisiert? Beispiel: int maximum(int x, int y) { int j = x; if (y >
Abteilung für Telekooperation Übung Softwareentwicklung 1 für Wirtschaftsinformatik Dr. Wieland Schwinger
Institut für Wirtschaftsinformatik – Software Engineering, JKU Linz 1 Algorithmen und Datenstrukturen SS 2005 Mag.Th. Hilpold u. Dr. A.Stritzinger Institut.
2.4 Rekursion Klassifikation und Beispiele
Aufruf einer Methode eines Objektes vom Typ „Bruch“
Einfach und doppelt verkettete Listen in JAVA by Jens Weibler
Algorithmen und Datenstrukturen Übungsmodul 8
EPROG Tutorium #6 Philipp Effenberger
Vorlesung 5. #include double fv(double x) { return sin(x); } int main(){ int i,N=10; double a=1,b=2,del,x,sum,f,integral; for(i=1,sum=0.0,del = (b-a)/N;i
Java-Kurs - 8. Übung Besprechung der Hausaufgabe.
Java-Kurs - 6. Übung Besprechung der Hausaufgabe
© 2004 Pohlig Informatik Kurse © 2004 Pohlig Informatik Kurse Der Tramp tanzt die Rekursion zünderUntersuchen(…) Basisfall Rückmeldung:
Java-Kurs - 6. Übung Besprechung der Hausaufgabe
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik I Vorlesung Rekursion-
Institut für Kartographie und Geoinformation Diskrete Mathematik I Vorlesung Binärer Suchbaum I-
Diskrete Mathe Diskrete Mathematik I Listen Vorlesung 4.
1 // Verkettete Liste 2 // demonstriert verkettete Listen und // Rekursion // (Einfügen am "Fuß") // #include struct Liste { int Element; Liste *weiter;
Informatik II – Übung 4 Gruppe 3
Objektorientierung Gliederung von Daten und Funktionen zu Objekten
2.4 Rekursion Klassifikation und Beispiele
Felder in Java.
Raphael Fischer Informatik II - Übung 05 Raphael Fischer
Grundkurs Informatik mit Java
Schleifen mit der Turtle
1. Die rekursive Datenstruktur Liste 1.3 Rekursive Funktionen
Informatik Kurse
Implementieren von Klassen
1. Die rekursive Datenstruktur Liste 1
Kara: act()-Methode.
Heapsort-Algorithmus
 Präsentation transkript:

Rekursion – Speicherverwaltung Lokale Variable werden auf dem Stack abgelegt. public class Demo { // rekursive Funktion private int sum(int n){ if (n==0) return 0; else int s = sum(n-1); return (n + s); } // Starterfunktion public int gibSumme(int n){ return sum(n); } } 13 12 11 10 9 8 7 6 5 4 3 2 1 Stackpointer 1

Rekursion – Speicherverwaltung Lokale Variable werden auf dem Stack abgelegt. public class Demo { // rekursive Funktion private int sum(int n){ if (n==0) return 0; else int s = sum(n-1); return (n + s); } // Starterfunktion public int gibSumme(int n){ n=sum(n); return n; } } 14 13 12 11 10 9 8 7 6 5 3 4 3 2 1 Aufruf gibSumme(3) Stackpointer 1

Rekursion – Speicherverwaltung Lokale Variable werden auf dem Stack abgelegt. public class Demo { // rekursive Funktion private int sum(int n){ if (n==0) return 0; else int s = sum(n-1); return (n + s); } // Starterfunktion public int gibSumme(int n){ n=sum(n); return n; } } 14 13 n=3 12 11 10 s=sum(2) 9 8 RET #0 7 6 5 4 sum(3) 3 2 1 3 Aufruf gibSumme(3) Stackpointer 1

Rekursion – Speicherverwaltung Lokale Variable werden auf dem Stack abgelegt. public class Demo { // rekursive Funktion private int sum(int n){ if (n==0) return 0; else int s = sum(n-1); return (n + s); } // Starterfunktion public int gibSumme(int n){ n=sum(n); return n; } } 14 13 n=2 12 11 10 s=sum(1) 9 8 RET #3 7 6 5 4 sum(3) 3 RET #0 2 1 3 3 Aufruf gibSumme(3) Stackpointer 1

Rekursion – Speicherverwaltung Lokale Variable werden auf dem Stack abgelegt. public class Demo { // rekursive Funktion private int sum(int n){ if (n==0) return 0; else int s = sum(n-1); return (n + s); } // Starterfunktion public int gibSumme(int n){ n=sum(n); return n; } } 14 13 n=1 12 11 10 s=sum(0) 9 8 RET #6 7 6 RET #3 5 4 2 sum(3) 3 RET #0 2 1 3 3 Aufruf gibSumme(3) Stackpointer 1

Rekursion – Speicherverwaltung Lokale Variable werden auf dem Stack abgelegt. public class Demo { // rekursive Funktion private int sum(int n){ if (n==0) return 0; else int s = sum(n-1); return (n + s); } // Starterfunktion public int gibSumme(int n){ n=sum(n); return n; } } 14 13 n=0 12 11 10 9 RET #6 8 RET #9 7 1 6 RET #3 5 4 2 sum(3) 3 RET #0 2 1 3 3 Aufruf gibSumme(3) Stackpointer 1

Rekursion – Speicherverwaltung Lokale Variable werden auf dem Stack abgelegt. public class Demo { // rekursive Funktion private int sum(int n){ if (n==0) return 0; else int s = sum(n-1); return (n + s); } // Starterfunktion public int gibSumme(int n){ n=sum(n); return n; } } 14 13 12 RET #9 11 10 9 RET #6 1+0 8 7 1 6 RET #3 1+2 5 4 2 sum(3) 3 RET #0 3+3 2 1 3 3 6 Aufruf gibSumme(3) Stackpointer 1