]> git.llucax.com Git - z.facultad/75.06/jacu.git/blobdiff - otros/mtf/mtf.c
BUGFIX : Se sacan cosasq ue no se necesitan mas y se arregla la funcion de comparacion
[z.facultad/75.06/jacu.git] / otros / mtf / mtf.c
index 5c19a120095eb73e43c150e0c30f3d403e90f9a9..3113161b6dad6aade21452fa9646800a4f61106b 100644 (file)
@@ -5,25 +5,15 @@ int no_pertenece(char *z, char c, int len);
 
 void pop_front(char *z, int pos);
 
 
 void pop_front(char *z, int pos);
 
-/*int get_pos(char *z, int len, char c);*/
+int get_pos(char *z, int len, char c);
 /****fin privadas******/
 
 void print_z(char *z, int len)
 {
        int i;
        for(i=0; i<len; i++)
 /****fin privadas******/
 
 void print_z(char *z, int len)
 {
        int i;
        for(i=0; i<len; i++)
-               printf("%c", z[i]);
-       printf("\n");
-}
-
-int comparar(const void *d1, const void *d2)
-{
-       char *c1, *c2;
-
-       c1 = (char *)d1;
-       c2 = (char *)d2;
-
-       return (*c1) - (*c2);
+               fprintf(stderr, "%c", z[i]);
+       fprintf(stderr, "\n");
 }
 
 int *jacu_mtf(char *datos, int len)
 }
 
 int *jacu_mtf(char *datos, int len)
@@ -34,19 +24,10 @@ int *jacu_mtf(char *datos, int len)
        
        pos = (int*)malloc(len*sizeof(int));
        z = jacu_buscar_z(datos, len, &size);
        
        pos = (int*)malloc(len*sizeof(int));
        z = jacu_buscar_z(datos, len, &size);
-       printf("Z original = ");
-       print_z(z, size);
-       printf("SIZE = %d\n", size);
-       /*z[0]='A';z[1]='B';z[2]='C';z[3]='D';z[4]='R';*/
-       /* Ordeno */
-       qsort(z, size, 1, comparar);
-
        for(i=0; i<len; i++){
                pos[i] = get_pos(z, size, datos[i]);
        for(i=0; i<len; i++){
                pos[i] = get_pos(z, size, datos[i]);
-               printf("vino %c emiti: %d\n",datos[i], pos[i]);
                if (pos[i] != 0) 
                        pop_front(z,pos[i]);
                if (pos[i] != 0) 
                        pop_front(z,pos[i]);
-               print_z(z, size);
        }
        return pos;
 }
        }
        return pos;
 }
@@ -57,8 +38,7 @@ char *jacu_buscar_z(char* datos, int len, int *size)
        char *z;
        int i, j=0;
        
        char *z;
        int i, j=0;
        
-       z = NULL; /*(char*)malloc(1);*/
-       /*if (z==NULL) return NULL;*/
+       z = NULL; 
        for(i=0; i<len; i++){
                if( no_pertenece(z, datos[i], j) == -1 ){
                        j++;
        for(i=0; i<len; i++){
                if( no_pertenece(z, datos[i], j) == -1 ){
                        j++;