Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Datenstruktur für (viele) xy-Werte (https://www.delphipraxis.net/162452-datenstruktur-fuer-viele-xy-werte.html)

cltom 23. Aug 2011 14:10

Delphi-Version: 2006

Datenstruktur für (viele) xy-Werte
 
Hej,

der Titel ist hoffentlich schon aussagekräftig genug. Welche Datenstruktur würdet ihr für eine mittlere bis große Anzahl an Messdaten (einige Tausend x-y-Werte) einsetzen (genaue Anzahl steht natürlich erst zur Laufzeit fest)?

Aktuell hab ich die Daten in einer StringListe (durch den Import aus einer Textdatei) und müsste im nächsten Schritt ein wenig rechnen damit. Nachdem ich hier im Forum immer wieder lese, dass man dynamische Arrays meiden sollte, bin ich ein wenig am Überlegen, was sonst.

- dynamisches Array (array of double)
- TList (öhm, wie sieht ein TList of double aus?)
- gänzlich anders?

danke
cltom

p.s. Dass ich die Werte aus der StringListe mal in double umwandeln muss, ist klar. Und für die spätere Auswertung wäre es unpraktisch, die Daten in der StringListe zu behalten und immer bei Bedarf in Fließkommazahlen zu verwandeln. Ich müsste die Umwandlung dann ja mehrmals durchführen.

DeddyH 23. Aug 2011 14:13

AW: Datenstruktur für (viele) xy-Werte
 
TList ginge schon, denn sie enthält ja nur Zeiger. Da kannst Du also auf alles Mögliche zeigen lassen, z.B. einen Record. Allerdings ginge auch ein dynamisches Array, wenn sich die Anzahl der Elemente nicht oft ändern sollte. Andererseits: wenn Du die Daten sowieso schon in einer Stringliste hast, kannst Du aber auch eine Klasse deklarieren, der die umgewandelten Doubles als Properties zuweisen und in den Objects die jeweiligen Instanzen hinterlegen.

Delphi-Laie 23. Aug 2011 14:15

AW: Datenstruktur für (viele) xy-Werte
 
Dynamisches Array of record (zweier Double-Werte) oder eine Liste vom Typ TList, dort muß man aber mit Zeigern und Typumwandlungen operieren (langsam, fehleranfällig, größerer Quellcode).

Bummi 23. Aug 2011 14:15

AW: Datenstruktur für (viele) xy-Werte
 
Ich bin gerade überfragt ab welcher Version TList Records aufnehmen konnte.
Meine persönliche Referenz sind Dynamische Array's in Deinem Fall wohl of Record wg. des schnelleren Zugriffs.

cltom 23. Aug 2011 14:27

AW: Datenstruktur für (viele) xy-Werte
 
hej,

vielen Dank für die Blitz-Antworten.

Also zB so?

Delphi-Quellcode:
type TFloatPoint = record
  x : double
  y : double
end;

type TXYArray = array of TFloatPoint

TiGü 23. Aug 2011 14:32

AW: Datenstruktur für (viele) xy-Werte
 
Hm, schade das du Delphi 2006 hast.
Damit fällt eine generische Liste flach.

DeddyH 23. Aug 2011 14:40

AW: Datenstruktur für (viele) xy-Werte
 
Genau so könnte man den Record und das Array deklarieren. Nur sollte man aufpassen, dass man das Array nicht allzu oft vergrößern muss, sonst geht die Performance doch wieder in die Knie.

mleyen 23. Aug 2011 14:41

AW: Datenstruktur für (viele) xy-Werte
 
Kommt drauf an was du damit machen willst.
Mit der Info viele (unbegrenzt?) -> einfach verkettete Liste

mschaefer 23. Aug 2011 14:50

AW: Datenstruktur für (viele) xy-Werte
 
Wir hatten mal einen Thread der sich mit der Geschwindikgeit von Listen beschäftigt hat und bei xy-Listen fällt mir gleich Hashlist und DirectoryList ein. Schaut doch mal bei Alzaimar´s -Listen-Thread. Man kann sich aus dem Beispielprogramm eine Liste heraussuchen.

Grüße in die Runde

(PS: Soll er auch!)

mkinzler 23. Aug 2011 14:53

AW: Datenstruktur für (viele) xy-Werte
 
[OT]Ich glaube Mark legt schon Wert auf die richtige Schreibung seines Namens :wink:[/OT]


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:03 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz