Alt 18.10.2011, 16:59:01   #1 (permalink)
Erfahrener Benutzer
Benutzerbild von torwart1990

ID: 327391
Lose-Remote

torwart1990 eine Nachricht über ICQ schicken torwart1990 eine Nachricht über Skype™ schicken
Reg: 15.10.2008
Beiträge: 1.871
torwart1990 ist ein wunderbarer Anblicktorwart1990 ist ein wunderbarer Anblicktorwart1990 ist ein wunderbarer Anblicktorwart1990 ist ein wunderbarer Anblicktorwart1990 ist ein wunderbarer Anblicktorwart1990 ist ein wunderbarer Anblicktorwart1990 ist ein wunderbarer Anblick
Standard Datenstrukturen und Algorithmen

hallo,
ich habe hier einige Wiederholungen vergangener Semester vormir liegen, die ich eigentlich lösen kann. eigentlich aber auch nur. hat irgendjemand einen Tipp oder kann mir vielleicht ganz sagen wie man zur Lösung kommt:


Der folgende Algorithmus arbeitet auf einer Sequence S.

1. Aufgabe:
algo1 rithm doit1(Sequence S) : Sequence :
2 Sequence S2 new Sequence();
3 while not S.isEmpty() do
4 Obj e S.remove(S.last());
5 S2 .insertLast(e);
6 return S2 .


a) Der Algorithmus wird mit dem Parameter
< 'c', 't', 'f', 'a' > aufgerufen.
Geben Sie S, e und S2 nach jeder Veränderung
sowie den Rückgabewert an.
b) Was leistet der Algorithmus generell?

2. Aufgabe
Implementieren Sie in Pseudocode den ADT Queue für Queues mit maximaler Länge N.
Nutzen Sie dafür ein Array ringförmig (modulo N), so dass das letzte Element des Arrays der
Vorgänger des ersten Elements ist.
Der Konstruktor hat die Signatur new RingQueue(int N), wobei N die Größe des Arrays ist.
Alle Methoden sollen eine Laufzeit O(1) haben. Welche Informationen müssen {zusätzlich
zum Array{ gehalten werden? Begründen Sie Ihre Antworten nachvollziehbar!



Zum Rangieren von Eisenbahnwagen steht ein
Rangiergleis mit Prellbock zur Verfügung. Die
Wagen können nur durch die Einfahrt zum
Rangiergleis gelangen; sie werden (in der Reihenfolge
des Einfahrens) von 1 bis n nummeriert.
Die Nummern der Wagen (in der Reihenfolge
des Ausfahrens) bilden eine Permutation
(p1; : : : ; pn) der Zahlen (1; : : : ; n).


a) Kann man auf diese Art die Permutationen (3; 2; 5; 4; 1; 6) oder (3; 5; 4; 1; 2; 6) erzeugen?
Falls ja, geben Sie die erforderlichen Operationen auf dem Rangiergleis an (Reihenfolge!).

Lösung ist meiner meinung da, das man die erste Permutation erzeugen kann durch rein und raus fahren der Waagons. die zweite Permutation lässt sich nicht erzeugen da mitten in der Permutation 1 aufgerufen werden soll.


b) Entwickeln Sie einen Algorithmus in Pseudocode, der zu einer als Queue übergebenen
Permutation (p1; : : : ; pn) von (1; : : : ; n) entscheidet, ob diese mit Hilfe des Rangiergleises
erzeugbar ist. Falls ja, sollen die erforderlichen Operationen (in der richtigen Reihenfolge!)
auch ausgegeben werden. Bitte erläutern Sie Ihre Lösung aussagekräftig.

c) Wie heißt die kürzeste Permutation, die man durch Rangieren nicht erzeugen kann? Ist sie eindeutig?
Meiner Meinung nach ist die Permutation { 3,1,2}. Eindeutig sollte sie auch sein


Hoffe mir kann jemand helfen
torwart1990 ist offline   Mit Zitat antworten
Gesponsorte Links
Alt 19.10.2011, 16:59:56   #2 (permalink)
abgemeldet

Reg: 17.05.2006
Beiträge: 422
thekilla1 thekilla1 thekilla1 thekilla1 thekilla1 thekilla1 thekilla1
Standard

Zitat:
Welche Informationen müssen {zusätzlich
zum Array{ gehalten werden? Begründen Sie Ihre Antworten nachvollziehbar!
Neben dem Array müssen Item_first und Item_last gespeichert werden, damit du in O(1) auf die (nächste) Einfügestelle zugreifen kannst...



Zu Aufgabe 1 b)
Wird die übergebene Sequenz Element für Element umgekehrt in S2 geschrieben, oder irre ich mich da?

Geändert von thekilla1 (19.10.2011 um 17:19:02 Uhr)
thekilla1 ist offline   Mit Zitat antworten
Alt 19.10.2011, 18:16:22   #3 (permalink)
Erfahrener Benutzer
Benutzerbild von torwart1990

ID: 327391
Lose-Remote

torwart1990 eine Nachricht über ICQ schicken torwart1990 eine Nachricht über Skype™ schicken
Reg: 15.10.2008
Beiträge: 1.871
torwart1990 ist ein wunderbarer Anblicktorwart1990 ist ein wunderbarer Anblicktorwart1990 ist ein wunderbarer Anblicktorwart1990 ist ein wunderbarer Anblicktorwart1990 ist ein wunderbarer Anblicktorwart1990 ist ein wunderbarer Anblicktorwart1990 ist ein wunderbarer Anblick
Standard

das hab ich mir auch schon gedacht. danke schön
torwart1990 ist offline Threadstarter   Mit Zitat antworten
Antwort

Gesponsorte Links

Anzeige


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 00:07:34 Uhr.