Dies ist eine statische Kopie unseres alten Forums. Es sind keine Interaktionen möglich.
This is a static copy of our old forum. Interactions are not possible.

Diktator

Senior Schreiberling

  • "Diktator" is male
  • "Diktator" started this thread

Posts: 605

Date of registration: Feb 12th 2002

Location: Region Hannover

Occupation: Gartenbau

1

Tuesday, November 26th 2002, 7:04pm

D&A, Übung 6

Aufgabe 1 a)

darf man hier das jeweils neu eingefügte element irgendwo hinklatschen (so dass aber immernoch die monotonie gegeben ist) oder gibt es da ne regel, in welcher reihenfolge der baum aufgebaut werden muss?
Diktator
Holzhacken ist deshalb so beliebt, weil man bei dieser Tätigkeit den Erfolg sofort sieht. - Albert Einstein

compost

Trainee

  • "compost" is male

Posts: 74

Date of registration: Dec 11th 2001

Location: Linden

2

Friday, November 29th 2002, 4:39pm

Tag!

Ich vermute mal, dass man das nächste Element jeweils an der linkesten, möglichen Stelle anfügen muss, so dass es ein fast vollständiger BinBaum bleibt.

Aber ich habe auch eine Frage dazu: Kann ein Heap auch ein vollständiger Baum sein?


Gruss Jens

Informatik Minister

Senior Schreiberling

  • "Informatik Minister" is male

Posts: 1,234

Date of registration: Dec 11th 2001

3

Friday, November 29th 2002, 4:55pm

Quoted

Original von compost
Aber ich habe auch eine Frage dazu: Kann ein Heap auch ein vollständiger Baum sein?


Ich vermute schwer, dass mit fast vollständig auch vollständig eingeschlossen ist, da beim Anfügen von Elementen ja zwangsläufig ein vollständiger, binärer Baum erzeugt wird, bis zum nächsten (links angehängten) Element.

Weiterhin ist bei "heap fast vollständig" das erste Google Ergebnis Dieses, wobei vollständige, binäre Bäume (b und c) als Heap auftauchen.

@Diktator
Wie compost sagte, muss ein fast vollständiger, binärer Baum gewährleistet sein, also dürfen nur rechte Elemente auf unterster Ebene fehlen, man hängt also von links nach rechts an, hat man einen vollständigen Baum, fängt man eine neue Ebene an, wiederum links.
"Fliegenpilze! Löwen!! Das Leben ist gefährlich." -- www.katzundgoldt.de

migu

free rider

  • "migu" is male

Posts: 2,643

Date of registration: Dec 11th 2001

Occupation: Developer

4

Monday, December 2nd 2002, 5:45pm

Aufgabe 2

Bei Aufgabe 2 ist mir schon die Aufgabenstellung unverständlich.

Was ist in a) mit rekonstruieren gemeint? Was ist zu erzeugen?
Es gäbe mehrere Möglichkeiten:
  1. die sequentielle Darstellung mit öffnenden Klammern als String
  2. ein binärer Baum als Zeigerstruktur im Speicher
  3. eine grafische Ausgabe
    [/list=1]

    Aus der Aufgabenstellung geht m.E. nichts eindeutig hervor.

    In Teil b) verwirrt mich, dass k offenbar auch von n abhängen muss. Weiterhin stellt sich mir die Frage, wieviel Bit man braucht, um eine Klammer zu kodieren. Theoretisch würde ein Bit ausreichen (Klammer ja/nein), doch das würde ja u.U. zu Uneindeutigkeiten führen.
    Außerdem: Wenn man ein zusätzliches Bit für "Klammer ja/nein" einplant, müsste es jedem Knoten zugeordnet werden, was bedeutete, dass n zusätzliche Bits gebraucht werden.
    Doch ich weiß nicht, ob ich damit richtig liege und ob ich die Aufgabenstellung überhaupt verstanden habe.
tar: Anlegen eines leeren Archivs wird feige verweigert.

cowhen

Muuuh!

  • "cowhen" is male

Posts: 1,374

Date of registration: Dec 13th 2001

5

Monday, December 2nd 2002, 6:43pm

Quoted

von migu Was ist in a) mit rekonstruieren gemeint? Was ist zu erzeugen?
ich denke, es ist mir ziemlicher sicherheit ein baum als zeigerstruktur im speicher gemeint. im sinne des adt TREE aus dem skript.


mfg

cowhen
plenty of time to relax when you are dead

  • "Joachim" is male

Posts: 2,863

Date of registration: Dec 11th 2001

Location: Hämelerwald

Occupation: Wissenschaftlicher Mitarbeiter (Forschungszentrum L3S, TU Braunschweig)

6

Monday, December 2nd 2002, 6:44pm

Quoted

Original von migu
Was ist in a) mit rekonstruieren gemeint? Was ist zu erzeugen?
Es gäbe mehrere Möglichkeiten:
  1. die sequentielle Darstellung mit öffnenden Klammern als String
  2. ein binärer Baum als Zeigerstruktur im Speicher
  3. eine grafische Ausgabe
    [/list=1]
[list=1]Ich tippe mal stark auf Alternative 2 (wobei allerdings kein binärer, sondern ein geordneter Baum gemeint ist -> das steht auch so im Aufgabentext). Die beiden anderen Möglichkeiten machen IMHO nicht allzuviel Sinn.

Quoted

Aus der Aufgabenstellung geht m.E. nichts eindeutig hervor.
So unverständlich finde ich die gar nicht.

Quoted

In Teil b) verwirrt mich, dass k offenbar auch von n abhängen muss.
k hängt nicht von n ab. In allen Knoten könnte ja z. B. auch der gleiche Wert abgelegt sein. Dann bräuchte man nur ein Symbol und somit wäre k beliebig.

Quoted

Weiterhin stellt sich mir die Frage, wieviel Bit man braucht, um eine Klammer zu kodieren. Theoretisch würde ein Bit ausreichen (Klammer ja/nein), doch das würde ja u.U. zu Uneindeutigkeiten führen.
Genau diese Uneindeutigkeiten gilt es durch geschickte Codierung zu vermeiden.

Quoted

Außerdem: Wenn man ein zusätzliches Bit für "Klammer ja/nein" einplant, müsste es jedem Knoten zugeordnet werden, was bedeutete, dass n zusätzliche Bits gebraucht werden.
Vergiß aber nicht, daß auf einen Knoten mehrere Klammern folgen können. Ein einzelnes Bit wäre dann nicht eindeutig.[/list]
The purpose of computing is insight, not numbers.
Richard Hamming, 1962

np

Junior Schreiberling

Posts: 155

Date of registration: Oct 23rd 2002

7

Tuesday, December 3rd 2002, 8:34am

Quoted

Original von Joachim

Quoted

Original von migu
Was ist in a) mit rekonstruieren gemeint? Was ist zu erzeugen?
Es gäbe mehrere Möglichkeiten:
  1. die sequentielle Darstellung mit öffnenden Klammern als String
  2. ein binärer Baum als Zeigerstruktur im Speicher
  3. eine grafische Ausgabe
    [/list=1]
[list=1]Ich tippe mal stark auf Alternative 2 (wobei allerdings kein binärer, sondern ein geordneter Baum gemeint ist -> das steht auch so im Aufgabentext).
[/list]
[list=1]

So war das gedacht.

Grüße,

Niklas[/list]