AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Löschen einer Generischen Liste

Ein Thema von Mokus · begonnen am 13. Feb 2014 · letzter Beitrag vom 13. Feb 2014
Antwort Antwort
Seite 2 von 2     12
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.533 Beiträge
 
Delphi 11 Alexandria
 
#11

AW: Löschen einer Generischen Liste

  Alt 13. Feb 2014, 11:38
Es geht doch um Doppler, oder? Dann könntest Du die Liste auch sortieren, (rückwärts) durchlaufen und das aktuelle Element mit seinem Vorgänger vergleichen und ggf.löschen.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 16. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#12

AW: Löschen einer Generischen Liste

  Alt 13. Feb 2014, 11:42
Irgendwie sehr verwirrend was du da schreibst.
Man kann mit Listen diverse Operationen durchführen.
Eine der wichtigsten Operationen ist Filtern.
Dieses Filtern kann man in-place vornehmen indem man die Elemente löscht die nicht der Filterbedinung entsprechen.
Oder man füllt eine 2. Liste mit den Elementen die der Filterbedingung entsprechen.
Die Ursprungsliste bleibt dabei unverändert.

Eine weitere Operation ist das Entfernen von Duplikaten.
Auch diese Operation lässt sich in-place oder out-of-place durchführen.

Dann gibt es auch noch Operationen mit 2 Listen.
Eine Union (Vereinigungsmenge) vereinigt die Elemente in beiden Eingangslisten zu einer Ausgangsliste.
Eine Intersection (Schnittmenge) kopiert nur die Elemente in die Ausgangsliste die in beiden Eingangslisten enthalten sind.
Daneben gibt es noch das Complement in verschiedenen Ausführungen. (z.B. alle Elemente von Liste A die nicht in Liste B enthalten sind).

Hast du nun eine oder zwei Eingangslisten?
Willst du filtern, Duplikate entfernen oder Mengenoperationen durchführen?
fork me on Github
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.007 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#13

AW: Löschen einer Generischen Liste

  Alt 13. Feb 2014, 12:53
Komisch, dass noch keiner gefragt hat, wie i initialisiert ist

Zur Fehlersuche wäre übrigens interessant gewesen, welchen Wert du in Delete reingegeben hast zu dem Zeitpunkt der Exception (Stichwort debug dcus) und Stoppunkt in die Zeile des raise).

Deine Logik, den Index beim Löschen über -a anzupassen, ist vermutlich falsch.
Du gehst davon aus, dass sie nach Index sortiert ist,
denn nehmen wir an, in der Liste stehen 1 und 0, dann versucht er Index 1 und -1 (0 - a, und in a steht 1) zu löschen.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight

Geändert von Stevie (13. Feb 2014 um 13:02 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Mokus
Mokus

Registriert seit: 24. Sep 2013
165 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#14

AW: Löschen einer Generischen Liste

  Alt 13. Feb 2014, 13:20
Zeit des Exection;
Index von der EkenebteZumLlschen Liste : 1
Wert hinter diesem index : 7
Länge der Liste result : 6.

ich weiß ja wo der fehler herkommt. . . . :p

aber auch ohne - a wird eine Exeption ausgelöst.
Beim versuch ElementeZumLöschen.sort kommt eine mit der Meldung "Kein aktiver Solver!"


dasd kann doch nicht so schwer item aus einer Liste zu löschen, welche eine IF bedinnung erfüllen.
Werde es nun mal nur mit ner For schelfie schreiben, ist schlechter für Performance. Aber soviele Item´s sollte dies Liste nicht beinhalten.



[EDIT]

sortieren hat schon gereicht. Das PRoblem kommt aus ner anderen Unit.
[/edit]
Markus
es gibt nur 10 arten von menschen !
die die binär verstehen und die die nicht. !

Geändert von Mokus (13. Feb 2014 um 13:29 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.007 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#15

AW: Löschen einer Generischen Liste

  Alt 13. Feb 2014, 15:44
aber auch ohne - a wird eine Exeption ausgelöst.
Logisch, denn auch dann stimmen die Indizes nicht mehr, nachdem du angefangen hast, Elemente aus der Liste zu entfernen.

sortieren hat schon gereicht. Das Problem kommt aus ner anderen Unit.
Gut
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

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

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:47 Uhr.
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