Curso Práctico de Estructuras de Datos y Algoritmos

Toma las primeras clases gratis

COMPARTE ESTE ARTÍCULO Y MUESTRA LO QUE APRENDISTE

Hola amigos, en esta entrada quiero presentarles mi programa, el cual recibe una lista de palabras desordenadas y regresa las palabras ya ordenadas. En este programa utilizo el algoritmo Bubble Sort y lo que mas me gusto de mi programa es que te va diciendo como va cada iteración del programa, lo que significa que tu puedes ver el avance de como va haciendo la organización de las palabras

#include <stdio.h>
#include <string.h>

int isOrden(char a[20], int b[20], int isGood, int suma){
        for(int i = 0; i < strlen(a) - 1; i++){
                if(a[i] < a[i + 1])
                        b[i] = 1;
                else
                        b[i] = 0;
        }

        for(int j = 0; j < strlen(a) - 1; j++)
                suma += b[j];

        if(suma == strlen(a) - 1){
                isGood = 1;
        }else{
                isGood = 0;
        }

        return isGood;
}

int printArray(char a[20]){
        for(int i = 0; i < strlen(a); i++){
                printf("%c ", a[i]);
        }

        printf("\n");
}

int main(){

        char a[20]={'k','a','y','u','c','o','p','\0'}, ma = ' ', me = ' ';
        int b[strlen(a)], suma = 0, isGood;

        printArray(a);

        isGood = isOrden(a, b, isGood, suma);

        while(isGood == 0){
                for(int i = 1; i < strlen(a); i++){
                        if(a[i] < a[i - 1]){
                                me = a[i];
                                ma = a[i - 1];
                                a[i] = ma;
                                a[i - 1] = me;
                        }
                }

                printArray(a);

                isGood = isOrden(a, b, isGood, suma);
        }

        return 0;
}

Curso Práctico de Estructuras de Datos y Algoritmos

Toma las primeras clases gratis

COMPARTE ESTE ARTÍCULO Y MUESTRA LO QUE APRENDISTE

0 Comentarios

para escribir tu comentario

Artículos relacionados