Skip to main content

2017 | OriginalPaper | Buchkapitel

3. Rekursion und Wiederholung

verfasst von : Andreas Solymosi, Ulrich Grude

Erschienen in: Grundkurs Algorithmen und Datenstrukturen in JAVA

Verlag: Springer Fachmedien Wiesbaden

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Zusammenfassung

Im Abschn. 1.1 haben wir den Algorithmus von Euklid sowohl iterativ wie auch rekursiv formuliert. Die Alternative ist typisch: Viele Aufgaben haben eine rekursive und eine iterative Lösung. In diesem Kapitel beschäftigen wir uns mit der Frage, wie weit die beiden Techniken austauschbar sind.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Fußnoten
1
Die Begriffe Iteration, Wiederholung und Schleife sind Synonyme; sie können miteinander ausgetauscht werden.
 
2
z. B. Prolog oder Logo; in gewissem Sinne auch XSLT.
 
3
s. z. B. [Niev].
 
4
Diese alternative, kompaktere Lösung ist aber etwas weniger gut lesbar.
 
5
Gute Compiler können hier allerdings optimieren.
 
6
Eine Reihung aus Ganzzahlen wird in Java mit 0 vorbesetzt.
 
7
Benannt nach dem Mathematiker F. W. Ackermann, 1896–1962.
 
8
Diese Methode funktioniert nur im Wertebereich von int korrekt. Der Austausch der Parametertypen und des Ergebnistyps auf long würde ihre Brauchbarkeit nur ein bisschen verbessern. Die Benutzung von java.math.BigDecimal-Objekten statt int-Variablen hebt diese Einschränkung auf, führt allerdings zu enormen Rechenzeitsteigerung.
 
9
Bedingungsgesteuerte Schleife.
 
10
Diese Gleichheit ist weder „flach“ noch „tief“, sondern eine „logische Gleichheit“; ebenso die nachfolgende Kopie.
 
11
Der Jokertyp List<?> ist der abstrakte Obertyp aller List-Instanziierungen.
 
12
static-Methoden können den Typparameter der generischen Klasse nicht benutzen; sie müssen selber als generische Methoden vereinbart werden.
 
13
Schleifen, deren Durchlaufzahl beim Eintritt in die Schleife bekannt sind; in einigen Programmiersprachen wie Pascal (nicht in Java): for-Schleifen.
 
14
Listen in den Standardklassen enthalten eine Methode size().
 
15
&& ist die kurzgeschlossene Konjunktion: Der rechte Operand wird nur berechnet, wenn die Auswertung des linken Operanden true ergibt.
 
16
Auf Englisch: call-back.
 
17
Leider können Lambda-Ausdrücke keine geprüften Ausnahmen auswerfen, so muss VollAusnahme als Unterklasse von Error vereinbart werden.
 
18
Fraktale sind geometrische Gebilde, deren Dimension keine Ganzzahl (wie 1, 2 oder 3), sondern eine Bruchzahl ist – wie z. B. bei einer Monsterkurve ca. 1,78 (eine irrationale Zahl).
 
19
Auf Englisch: turtle graphics; ein Online-Beispiel ist unter der Adresse http://kaminari.istc.kobe-u.ac.jp/java/logo/ zu finden.
 
20
Manche nennen sie Sierpinski-Dreieck.
 
21
Eine Annäherung ist in Abb. 3.6 zu sehen.
 
22
Benannt nach David Hilbert (1862–1943), deutscher Mathematiker.
 
23
Benannt nach Waclaw Sierpiński (1882–1969), polnischer Mathematiker.
 
24
Hängt vom Java-Interpreter ab.
 
25
Der Interpreter löst die Ausnahme StackOverflowErroraus, wenn die Anzahl der rekursiven Aufrufe (z. B. bei einer endlosen Rekursion) die Kapazität des Stapels überschreitet.
 
26
Auf Englisch: trial and error.
 
27
Auf Englisch backtracking.
 
28
requires n*n < Integer.MAX_VALUE; andernfalls hilft die Verwendung von long oder java.math.BigDecimal
 
29
Im idealen Fall steht der Ehepartner auf der ersten Stelle.
 
30
Aus Jane Austen’s „Stolz und Vorurteil“ („Pride and Prejudice“), 1813.
 
31
In der Bundesrepublik Deutschland an die ZVS (Zentrale Vergabestelle).
 
Metadaten
Titel
Rekursion und Wiederholung
verfasst von
Andreas Solymosi
Ulrich Grude
Copyright-Jahr
2017
DOI
https://doi.org/10.1007/978-3-658-17546-7_3