OK, leider kann ich das nicht vereinfachen, sonst würde der sinn verloren gehen.
Eine andere Frage, Wenn ich so ein rotierende Liste habe, wie kann ich vom aktuelen Element auf den inhalt der Nachbarelemente zugreifen?
so: char* string2 = (char*) aktl_Elem -> right = list -> content; für den Inhalt auf den rechtennachbarn und
char* string2 = (char*) aktl_Elem -> left = list -> content; auf den Inhalt des linken Nachbarn?
Ich verfolge jetzt die Idee, erst meine liste zu befüllen, und dann erst zu sortieren (s. Funktion Sort)
aus der Liste.h
aus der Liste.c
Gruß.
Eine andere Frage, Wenn ich so ein rotierende Liste habe, wie kann ich vom aktuelen Element auf den inhalt der Nachbarelemente zugreifen?
so: char* string2 = (char*) aktl_Elem -> right = list -> content; für den Inhalt auf den rechtennachbarn und
char* string2 = (char*) aktl_Elem -> left = list -> content; auf den Inhalt des linken Nachbarn?
Ich verfolge jetzt die Idee, erst meine liste zu befüllen, und dann erst zu sortieren (s. Funktion Sort)
aus der Liste.h
Java:
typedef struct node
{
struct node* right; // Zeiger auf das Nachfolgerelement
struct node* left; // Zeiger auf das Vorgängerelement
void* content; // Für den Dateninhalt
int lineCounter;
int nodeCounter;
} node;
aus der Liste.c
Java:
void sort(node* list)
{
node* kopf = list;
node* aktl_Elem = list;
//Sortieren der Liste
while(kopf != (aktl_Elem = aktl_Elem -> left))
{
char* string1 = (char*) aktl_Elem -> content;
char* string2 = (char*) list -> content = aktl_Elem -> right;
printf("%s string1\n", string1);
printf("%s string2\n", string2);
if(strcmp(string1, strin2) < 0)
{
.....
}
.....
}
Zuletzt bearbeitet: