Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
X-FILE Super JLI'ler
Anmeldedatum: 12.07.2003 Beiträge: 349
Medaillen: Keine
|
Verfasst am: 22.09.2003, 01:45 Titel: Listen und Geschwindigkeit |
|
|
Wo wir grad so schoen bei Listen sind
Wie stark sind denn wohl die Performanceeinbußen, wenn ich Listen immer wieder von vorne durchgehe, loesche, durchgehe, zeichne usw.?
Ich meine bei 3-4 Listen und mehr ist das doch schon ganz schoen was zu tun, oder? Ich meine das jetzt eher Neugierighalber, weil ne andere Loesung viele Objekte durchzuzeichnen gibts eh nicht (oder?), aber trotzdem.... |
|
Nach oben |
|
 |
AFE-GmdG JLI MVP


Alter: 45 Anmeldedatum: 19.07.2002 Beiträge: 1374 Wohnort: Irgendwo im Universum... Medaillen: Keine
|
Verfasst am: 22.09.2003, 09:58 Titel: |
|
|
Wenn ich mit Listen arbeite nutze ich fast Grundsätzlich Doppelt verkettete Listen. Der Mehraufwand für die Verwaltung und die 4 zusätzlichen Bytes sind sehr gering, so dass die Vorteile klar überwiegen.
Dazu zählen unter anderem:
- Vereinfachtes einfügen, Löschen und sortieren, da man immer sehr schnell den Vorgänger ermitteln kann
- Durchsuchen der Liste in 2 Richtungen möglich
AFE-GmdG _________________
CPP: | float o=0.075,h=1.5,T,r,O,l,I;int _,L=80,s=3200;main(){for(;s%L||
(h-=o,T= -2),s;4 -(r=O*O)<(l=I*I)|++ _==L&&write(1,(--s%L?_<(L)?--_
%6:6:7)+\"World! \\n\",1)&&(O=I=l=_=r=0,T+=o /2))O=I*2*O+h,I=l+T-r;} |
|
|
Nach oben |
|
 |
Hazel JLI MVP


Alter: 40 Anmeldedatum: 19.07.2002 Beiträge: 1761
Medaillen: Keine
|
Verfasst am: 22.09.2003, 13:16 Titel: |
|
|
Es kommt natürlich darauf an, wieviele Elemente deine Listen umfassen. Die Performanceeinbußen für Algorithmen, die auf Listen angewand werden steigen proportional zu der Anzahl der Elemente. _________________ *click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
|
|
Nach oben |
|
 |
TheMillenium Dark JLI'ler
Anmeldedatum: 21.07.2002 Beiträge: 1427 Wohnort: World Medaillen: Keine
|
Verfasst am: 22.09.2003, 13:18 Titel: |
|
|
Das geht jetzt zwar vielleicht etwas bei dem Optimierungsthema nebenbei, aber mehrere Programmierprofis raten einem anstatt Listen, eines der langsamsten STrukturen überhaupt Arrays zu nehmen. Da hat man zwar manchmal 0,5MB-1MB zuviel Speicher reserviert, aber es ist das schnellste was es gibt. Ansonsten bin ich auch ein Befürworter der doppelt verketteten Listen. _________________ The source of all power is in its destiny... |
|
Nach oben |
|
 |
Hazel JLI MVP


Alter: 40 Anmeldedatum: 19.07.2002 Beiträge: 1761
Medaillen: Keine
|
Verfasst am: 22.09.2003, 13:27 Titel: |
|
|
Nebenbei: Die STL Liste "list" ist übrigens so eine doppelt verkettete Liste. Wenn man eine einfach verkettete Liste möchte, muss man slist nehmen(welche glaube ich nicht Standard ist; ich bin mir nicht ganz sicher). _________________ *click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
|
|
Nach oben |
|
 |
LeeDiGer Super JLI'ler

Anmeldedatum: 31.08.2003 Beiträge: 366 Wohnort: Duisburg Medaillen: Keine
|
Verfasst am: 22.09.2003, 15:45 Titel: |
|
|
Die Listen selber sind nicht soviel langsamer als Arrays. Es kommt viel mehr auf die Anzahl der Rechenopterationen an. In den meisten Fällen benutze ich Listen aus dem STL, weil diese eben sehr flexibel sind und einfach zu bedienen sind. |
|
Nach oben |
|
 |
|