• Keine Ergebnisse gefunden

Übungsblatt  6

N/A
N/A
Protected

Academic year: 2021

Aktie "Übungsblatt  6"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Informatik Bachelor 1. Semester WS 2014/15 Prof. Dr. Wolfgang Schramm Algorithmen und Datenstrukturen (ADS)

Übungsblatt  6   Ausgabe:  12.12.2014   1

   

Übungsblatt  6  

Ausgabe:  12.12.2014

 

 

Abgabe:  9.01.2015  

 

Hinweise:   -­‐   Die  Abnahme  der  Übungen  gilt  als  Prüfungsleistung.  Bei  einer  Verhinderung   durch  Krankheit  ist  eine  ärztliche  Bescheinigung  der  Arbeitsunfähigkeit  vorzu-­‐

legen.  

  -­‐   Zur   Abnahme   müssen   die   Ergebnisse   (Pseudocode,   Stichpunkte)   –   soweit   nichts  anderes  angegeben  ist  –  schriftlich  (ausgedruckt)  vorliegen.  

       

Aufgabe  1:  ADT  Binärbaum  –  Programmieraufgabe   80  Punkte      

Der  in  der  Vorlesung  vorgestellte  ADT  BinaryTree  (binärer  Suchbaum)  stellt  über  ein  Interface   die  folgende  Funktionalität  zur  Verfügung:  

 

• boolean insert (int val)   Fügt  val  in  den  Baum  ein.  

• boolean insert (String filename)  

Fügt   die   int-­‐Werte,   die   in   der   Datei   stehen   in   den  Baum  ein.  

• boolean contains(int val)  Testet,  ob  val  im  Baum  vorhanden  ist.  

• int size()   Ermittelt  die  Anzahl  der  Knoten  im  Baum.  

• int height()   Ermittelt  die  Höhe  des  Baums.  

• int getMax()   Liefert  das  größte  Element  im  Baum.  

• int getMin()   Liefert  das  kleinste  Element  im  Baum.  

• boolean remove (int val)   Entfernt  val  aus  dem  Baum.  

• booelan isEmpty()   true  genau  dann,  wenn  der  Baum  leer  ist.  

• addAll(BinaryTree otherTree)  

Fügt   alle   Elemente   des   übergebenen   Baums (otherTree) in  den  aktuellen  Baum  ein.  

 

Legen  Sie  fest  (und  beschreiben  Sie  im  Kommentar),  welche  Ergebnisse  herauskommen.  

 

Ausgabe  der  Werte  im  Baum  in  der  jeweiligen  Reihenfolge:    

• void printInorder()

• void printPostorder()

• void printPreorder()

• void printLevelorder()

 Implementieren  Sie  in  der  Klasse  MyBinaryTree  die  Funktionen  des  Interface  und  zusätz-­‐

lich  noch  die  folgende  statische  Methode:  

(2)

Übungsblatt     Ausgabe:  12.12.2014

   

2

 

• BinaryTree empty ()   Erzeugt  einen  leeren  neuen  Baum.  

   

Um  das  Testen  zu  erleichtern,  ist  die  Methode  boolean insert (String filena- me)vorgesehen.  Dabei  werden  alle  Werte  auf  der  Datei  in  den  Baum  eingefügt.  

 

Wenn   sie   die   Einfügeoperation  boolean insert (int val) rekursiv   implementieren,   erhalten  Sie  15  Zusatzpunkte.    

 

20  weitere  Zusatzpunkte  erhalten  Sie,  wenn  Sie  die  Methode  clone  für  die  Erstellung  einer   tiefen  Kopie  des  Binärbaums  implementieren.  

 

Schreiben  Sie,  ähnlich  wie  bei  Aufgabe  1  in  Übungsblatt  5  ein  Rahmenprogramm,  das  es  er-­‐

möglicht,  über  ein  geeignetes  Menü  die  einzelnen  Operationen  auszuführen.  

 Gehen  Sie  so  vor,  dass  Sie  zuerst  die  Methode  boolean insert (int val) implementie-­‐

ren  und  dann  die  Methoden  zur  Ausgabe  der  Werte  des  Baums.  Dann  lassen  sich  die  restli-­‐

chen  Methoden  einfacher    testen.  

 

Referenzen

ÄHNLICHE DOKUMENTE

Dage- gen fühlt sich der Patient geborgen, wenn sein Arzt ihn über Charakter und Entwicklung der Krankheit in- formiert hat und er darauf bauen kann, daß dieser das auch in Zukunft

Fachbereich

Bei längerer Krankheit muss der Praxisstelle und der Fachhochschule Potsdam eine ärztliche Bescheinigung vorgelegt werden. §

Be- stehen Schwangerschaftsbe- schwerden, kommt es also dar- auf an, ob diese Beschwer- den Krankheitswert haben oder ob eine Fortsetzung der bisherigen Tätigkeit trotz nor-

Arbeitsunfähigkeit liegt ferner auch vor, wenn aufgrund eines bestimmten Krankheitszustandes, der für sich allein noch Arbeitsunfähigkeit bedingt, absehbar ist, dass aus der

2) Eine entsprechende Bestätigung darf nicht ausgestellt werden, wenn eine auf einer Krank- heit, Behinderung oder Sucht beruhende gesundheitliche Einschränkung so gravierend ist,

Er / Sie ist nicht wegen eines körperlichen Gebrechens, wegen einer Schwäche seiner / ihrer geistigen oder körperlichen Kräfte oder wegen einer Sucht zur Ausübung des Berufes

Er / Sie ist nicht wegen eines körperlichen Gebrechens, wegen einer Schwäche seiner / ihrer geistigen oder körperlichen Kräfte oder wegen einer Sucht zur Ausübung des Berufes als.