Gepostet: |
Gruppieren von Elementen | ||||||||||
Hallo bin ein Stückchen weiter, leider fehlt mir eine Funktion zum Gruppieren. Ich erhalte zb: laut meinem Programm (möchte nicht alles neu machen, bitte nicht!!!!!!!) folgende Ausgabe: (5,1,"Z",[E],E) (5,1,"E",[E,+,T],E) (4,1,"E",[T],T) (4,1,"T",[T,*,F],T) (3,1,"T",[F],F) (2,1,"F",[(,E,)],() (1,1,"F",,i) soweit so gut. In einer späteren Rekursion erhalte ich zb nochmals (5,1,"E",[E,+,T],E) diesen Wert und meine Version filtert diesen Wert heraus. Ich habe gesehen, dass ich dies falsch gemacht habe. Es sollen nur dann die Werte gefiltert werden wenn genau die gleiche Gruppe (5,1,"Z",[E],E) (5,1,"E",[E,+,T],E) schon vorhanden sind. Es heißt ich müsste meine Ausgabe irgendwie gruppieren und vergleichen können. Das heißt die 5,1-Elemente, in diesem Fall eben diese beiden und dann bei einer späteren Ausgabe kontrollieren ob diese schon vorhanden sind, aber eben genau diese Gruppe und nicht nur eines von beiden. Ich hoffe ich habe mich halbwegs verständlich ausgedrückt. Danke Siracusa lg arnold |
|||||||||||
Zum Seitenanfang | |||||||||||
Gepostet: |
|||||||||||
Hallo, mir ist nicht klar geworden nach welchen Kriterien du filtern willst, aber es gibt z.B. die Funktion Data.List.nubBy, der du ein selbst definiertes Prädikat übergeben kannst, nach dem die doppelten Werte gefiltert werden sollen. Ansonsten kannst du dir auch mit filter erstmal die Elemente einer Gruppe bestimmen und dann innerhalb der Gruppe selbst vergleichen. Viele Grüße, Siracusa |
|||||||||||
Zum Seitenanfang | |||||||||||
Gepostet: |
|||||||||||
Hallo, vielen Dank für Deine Antwort. Ich würde gerne alle welche zu Gruppe 5 gehören zusammenführen usw., das heißt ich muss irgendwie diese beiden Element zu einer Gruppe zusammenführen um danach festzustellen ob vielleiche zu einem späteren Zeitpunkt nochmals die gleichen Items, das heißt dass der Parser an der 1.Stelle is: (5,1) bedeutet eben dass diese Items zur Gruppe 5 gehören und 1 bedeutet dass der Parser sich auf Pos1 befindet. Später beim nächsten Gotoset soll dann überprüft werden, ob es schon einen solchen Eintrag gibt, aber eben beide in genau dieser Form danke arnold |
|||||||||||
Zum Seitenanfang | |||||||||||