Not logged in. · Lost password · Register

LordSidyes
Lord
Member since Nov 2011
370 posts
Subject: Klausur vom 05.08.2010 - Aufgabe 8
Hallo Leute,
hat jemand (warhscheinliche) Lösungen für die Teilaufgabe c) mit der dynamischen Programmierung?
Wäre super!
LordSidyes
Lord
Member since Nov 2011
370 posts
Sorry für Doppelpost, aber habe gerade die Lösung für die Aufgabe 3) Schreibtischlauf entdeckt...
: d a a
: [d, d, d, d] [a, b, c, d]
: [a, d, c, d] [a, b, a, d]

stimmt das wirklich?
Wieso ist das denn bei 1: d a a? und nicht a a a?
Es wird doch in der Reihenfolge a, dann b, dann c, dann d eingefügt?! Und add fügt es ja immer hinten ein, also bleibt a doch an erster Stelle?
Guanta
Avatar
Member since Oct 2005
307 posts
Quote by LordSidyes:
Sorry für Doppelpost, aber habe gerade die Lösung für die Aufgabe 3) Schreibtischlauf entdeckt...
: d a a
: [d, d, d, d] [a, b, c, d]
: [a, d, c, d] [a, b, a, d]

stimmt das wirklich?
Wieso ist das denn bei 1: d a a? und nicht a a a?
Es wird doch in der Reihenfolge a, dann b, dann c, dann d eingefügt?! Und add fügt es ja immer hinten ein, also bleibt a doch an erster Stelle?

Hab jetzt nur die erste Ausgabe angeschaut, die stimmt: d a a, weil l1 = [d d d d], in dem Array stehen nur Referenzen die alle aufs selbe Objekt zeigen. l2 und l3 hingegen werden kopiert, d.h. hier steht jeweils [a b c d].

Btw.: Du könntest das Programm auch einfach mal laufenlassen.
An eye for an eye will make the whole world blind. (Gandhi)
Damon
nom nom nom
Avatar
Member since Oct 2011
298 posts
Ich machs dir noch leichter:
http://hpaste.org/64040
LordSidyes
Lord
Member since Nov 2011
370 posts
Quote by Damon:
Ich machs dir noch leichter:
http://hpaste.org/64040

Danke^^
Ach immer dieser Referenz und Typenmist, der verleitet immer zu Fehlern...
kaut
Member since May 2011
380 posts
also mein problem besteht bei der Aufgabe überhaupt irgendwas verwertbares zufinden.

Wie kommt man denn auf die erste Ausgabe?
LordSidyes
Lord
Member since Nov 2011
370 posts
Naja die erste Schleife geht ja von "a" bis "d" und setzt jeweils das char vom Objekt mc je nach Schleifendurchlauf und fügt es dann in die Liste l1 hinein. Da man aber jedes mal den Wert vom gleichen Objekt mc verändert und somit die "Pfeile" bzw Referenzen immer auf mc zeigen, sind es die gleichen Werte in der 1. Liste... Also nach dem ersten Durchlauf steht a in der l1, im 2. steht b b (weil das ursprüngliche a aufs gleiche Objekt zeigt, das jetzt b ist..), im dritten "c" und im vierten "d"! So ergibt sich, dass l1 "d d d d" beinhaltet. Also beim ersten Systemoutprint kommt "d" "a" "a" raus. Die beiden a sind a, weil die Objekte in den Listen l2 und l3 nicht auf das mc zeigen, sondern Kopien sind und sich somit das "a" an Stelle [0] nicht ändert... Recht tricky..
kaut
Member since May 2011
380 posts
aber wie kann ne schleife von a bis d laufen?

Also bei zahlen kann man ja weiter zählen, aber bei Strings?
ict
Member since Nov 2006
347 posts
Das sind keine Strings, sondern char[acters]. Auf denen kann man normal "rechnen" (Reihenfolge kannst du für "normale" Buchstaben z.B. in der ASCII-Tabelle nachsehen)
/* This is O(scary), but seems quick enough in practice. */
Close Smaller – Larger + Reply to this post:
Verification code: VeriCode Please enter the word from the image into the text field below. (Type the letters only, lower case is okay.)
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Special characters:
Go to forum
Datenschutz | Kontakt
Powered by the Unclassified NewsBoard software, 20150713-dev, © 2003-2011 by Yves Goergen