#include <stdio.h>
#include <stdlib.h>
#define ZEICHEN_MAX 42
typedef struct {
char* zeichen; // das vorkommende Zeichen
int zaehler; // wird inkrementiert bei mehrfachem vorkommen
struct Knoten* zeiger[ZEICHEN_MAX]; //Array von Zeigern auf die nächsten Arrays
} Knoten;
void head_initialisieren(Knoten* kopf){
int i;
kopf
= (Knoten
*) malloc(sizeof(Knoten
)); kopf->zaehler=0;
kopf->zeichen=NULL;
for(i=0;i<ZEICHEN_MAX;i++){
kopf->zeiger[i]=NULL;
}
}
Knoten* einfuegen(char *c){
int i;
Knoten *neu;
neu
=(Knoten
*) malloc(sizeof(Knoten
)); neu->zaehler=0;
neu->zeichen=c;
for(i=0;i<ZEICHEN_MAX;i++){
neu->zeiger[i]=NULL;
}
return neu;
}
void baum_entfernen(Knoten* kopf){
int i;
Knoten* temp;
for(i=0;i<ZEICHEN_MAX;i++){
if(kopf->zeiger[i]!= NULL){
temp = kopf->zeiger[i]; // Hier gibts dann ne Warnung für das assignment
baum_entfernen(temp);
}
}
}
int main() { return 0; }
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCiNkZWZpbmUgWkVJQ0hFTl9NQVggNDIKCnR5cGVkZWYgc3RydWN0IHsKICAgIGNoYXIqIHplaWNoZW47IC8vIGRhcyB2b3Jrb21tZW5kZSBaZWljaGVuCiAgICBpbnQgemFlaGxlcjsgIC8vIHdpcmQgaW5rcmVtZW50aWVydCBiZWkgbWVocmZhY2hlbSB2b3Jrb21tZW4KICAgIHN0cnVjdCBLbm90ZW4qIHplaWdlcltaRUlDSEVOX01BWF07IC8vQXJyYXkgdm9uIFplaWdlcm4gYXVmIGRpZSBuw6RjaHN0ZW4gQXJyYXlzCn0gS25vdGVuOwogCnZvaWQgaGVhZF9pbml0aWFsaXNpZXJlbihLbm90ZW4qIGtvcGYpewogICAgaW50IGk7CiAgICBrb3BmID0gKEtub3RlbiopIG1hbGxvYyhzaXplb2YoS25vdGVuKSk7CiAgICBrb3BmLT56YWVobGVyPTA7CiAgICBrb3BmLT56ZWljaGVuPU5VTEw7CiAgICBmb3IoaT0wO2k8WkVJQ0hFTl9NQVg7aSsrKXsKICAgICAgICBrb3BmLT56ZWlnZXJbaV09TlVMTDsKICAgIH0KfQogCiAKS25vdGVuKiBlaW5mdWVnZW4oY2hhciAqYyl7CiAgICBpbnQgaTsKICAgIEtub3RlbiAqbmV1OwogICAgbmV1ID0oS25vdGVuKikgbWFsbG9jKHNpemVvZihLbm90ZW4pKTsKICAgICAgICBuZXUtPnphZWhsZXI9MDsKICAgICAgICBuZXUtPnplaWNoZW49YzsKICAgICAgICBmb3IoaT0wO2k8WkVJQ0hFTl9NQVg7aSsrKXsKICAgICAgICAgICAgbmV1LT56ZWlnZXJbaV09TlVMTDsKICAgICAgICB9CiAKcmV0dXJuIG5ldTsKfQogCnZvaWQgYmF1bV9lbnRmZXJuZW4oS25vdGVuKiBrb3BmKXsKICAgIGludCBpOwogICAgS25vdGVuKiB0ZW1wOwogICAgZm9yKGk9MDtpPFpFSUNIRU5fTUFYO2krKyl7CiAgICAgICAgaWYoa29wZi0+emVpZ2VyW2ldIT0gTlVMTCl7CiAgICAgICAgICAgIHRlbXAgPSBrb3BmLT56ZWlnZXJbaV07IC8vIEhpZXIgZ2lidHMgZGFubiBuZSBXYXJudW5nIGbDvHIgZGFzIGFzc2lnbm1lbnQKICAgICAgICAgICAgYmF1bV9lbnRmZXJuZW4odGVtcCk7CiAgICAgICAgfQogICAgfQogICAgZnJlZShrb3BmKTsKfQoKaW50IG1haW4oKSB7IHJldHVybiAwOyB9Cg==