Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Ordenar string tipo struct con quicksort

Estas en el tema de Ordenar string tipo struct con quicksort en el foro de C/C++ en Foros del Web. Hola amigos del foro: No se si esta bien escrito el titulo, asi que les pido una disculpa si los confundo con eso. El problema ...
  #1 (permalink)  
Antiguo 03/10/2013, 21:07
 
Fecha de Ingreso: julio-2011
Ubicación: guadalajara mX
Mensajes: 84
Antigüedad: 13 años, 4 meses
Puntos: 6
Ordenar string tipo struct con quicksort

Hola amigos del foro:

No se si esta bien escrito el titulo, asi que les pido una disculpa si los confundo con eso.

El problema a resolver es:

Devo pedir datos guardarlos en un struct y con un menu (Insertar, Modificar, Mostrar, Ordenar) llegue al punto de tener que ordenar los datos con quitsort(requisito del proyecto alum[i].name), ya tengo un codigo que funciona con numero pero con cadenas no pude resolverlo asi que solicito su ayuda,
Les dejo el codigo

Código PHP:
#include<cstring>
#include<conio.h>
#include<iostream>
#include<windows.h>

using namespace std;

typedef struct ALUMNOS
{
    
char codigo[10];
    
char name[25];
    
char apellido[25];
    
char carrera[15];
    
double promedio;
    
char correo[20];
    
int orden;
}
alum;

void ordenarnombre(alum A[],int izq,int der)
{
//quicksort

int i;
alum x;
alum aux;
izq;
der;
strcpy(x.name,A[(izq der)/2].name);
    do{
        while((
strcmp(A[i].name,x.name)>0)&&(j<=der))
            
i++;
        while((
strcmp(x.name,A[j].name)<0)&&(j>izq))
            
j--;
        if(
i<=j)
        {
            
aux=A[i];
            
A[i]=A[j];
            
A[j]=aux;
            
i++;  j--;
        }
    }while(
i<=j);

    if(
izq<j)
        
ordenarnombre(A,izq,j);
    if( 
der )
        
ordenarnombre(A,i,der);

}

int main()
{
    
alum datos[20];
   
int contador=0;    //Este contador tiene el dato de 
                               //datos ingresados datos[contador];

ordenarnombre(datos,0,contador-1);


omiti el codigo restante porque son en total 288 lineas, tengo otro metodo de ordenamiento por burbuja para ordenar por codigo y ese funciona, pero este a veces los mueve pero no los deja ordenados....


de antemano gracias por la atencin a mi duda.

Etiquetas: funcion, int, numero, string, struct, tipo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:34.