Strukturen - Theoriefrage "Speicherplatzbedarf"
-
Hallo!
Ich bearbeite derzeit einge Übungsblätter für meine Prüfung in C und hänge an einer Frage fest. Der Themenbereich sind Strukturen.
Hier die Frage:
"Sie wollen eine bestimmte Anzahl x von Daten eines bestimmten Datentyps y
abspeichern. Sie denken dabei an die Möglichkeit entweder ein Feld oder
eine einfach verkettete Liste zu verwenden. Vergleichen Sie beide
Möglichkeiten hinsichtlich des Speicherplatzbedarfs, indem Sie den
jeweiligen Bedarf bestmöglich angeben."Ich hab absolut keinen Schimmer, was ich machen soll!
Kann mir jemand helfen?
-
Ich hab absolut keinen Schimmer, was ich machen soll!
Steht doch da.
indem Sie den jeweiligen Bedarf bestmöglich angeben
Rechne Speicherplatzbedarf fuer Variant mit Array aus. rechne Speicherplatz fuer Variante mit Liste aus. Verwende dein Wissen ueber Arrays und Listen.
Vergleichen Sie beide
Setze je nach Wert folgendes Relationszeichen zwischen beide: < > =
-
Und wie rechne ich den Speicherplatzbedarf für die jeweiligen Variante aus?
-
Operator sizeof dürfte hier helfen.
-
Du kannst Annahmen machen.
Der genaue Wert für den Datentyps y ist auch nicht nötig.Was unterscheidet das Speichern in Array und Listen?
Bzw: Was wird bei Listen noch benötigt?
-
Betrachte die einfachste Form von Liste (oder eine, die du kennst): Einfach verkettete Liste. Wie ist ein Listenelement aufgebaut?
-
Betrachte die einfachste Form von Liste (oder eine, die du kennst): Einfach verkettete Liste. Wie ist ein Listenelement aufgebaut?
Ja die einfachste Variante ist ein struct mit nem Zeiger auf "next".
-
Und was ist mit dem Objekt selbst?
-
marcm244 schrieb:
Ja die einfachste Variante ist ein struct mit nem Zeiger auf "next".
Und da ist ja schon der Unterschied den du brauchst um eine Liste zu machen.
Da du ja keine Nutzdaten hast, ist das auch einfach.
Wieviel Speicher brauchst du für ein Array um 1000 mal Nichts zu speichern?
Wieviel Speicher brauchst du für ein Liste (wie von dir beschrieben) mit 1000 Elementen?
-
Fürs Array nichts und für die Liste 1000 Pointer
-
-
marcm244 schrieb:
Fürs Array nichts und für die Liste 1000 Pointer
Wunderbar.
Jetzt noch das passende Relationszeichen finden und die Aufgabe ist gelöst.
-
Es wird aber nicht nichts gespeichert, sondern
marcm244 schrieb:
"Sie wollen eine bestimmte Anzahl x von Daten eines bestimmten Datentyps y abspeichern.