C/Visual C - Mas frecuente

 
Vista:

Mas frecuente

Publicado por Rafa (1 intervención) el 03/01/2007 18:32:49
Como puedo sacar el elemento más frecuente de una lista enlazada?

Tengo echo el siguiente codigo pero no se que es lo que hago mal:

void masFrecuente( Lista *lista, funcionCompara funcion, void *p ) {
int a,b,contador,maximo;
void *salida= (void *) malloc(sizeof(lista->tamElemento));
void *dato1 = (void *) malloc(sizeof(lista->tamElemento));
void *dato2 = (void *) malloc(sizeof(lista->tamElemento));
Posicion *pos1=(Posicion *) malloc(sizeof(Posicion));
Posicion *pos2=(Posicion *) malloc(sizeof(Posicion));
maximo=1;
for(a=0;a<(numElementos(lista)-1);a++){
for(b=(a+1);b<numElementos(lista);b++){
posicionIesima(lista,a,pos1);
posicionIesima(lista,b,pos2);
elemento(pos1,dato1);
elemento(pos2,dato2);
if(funcion(dato1,dato2)==0){
contador++;
if(maximo<contador){
maximo=contador;
memcpy(salida,dato1,sizeof(lista->tamElemento));
}
}
}
}
p=salida;
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder