Informática, perguntado por erlonolmesquita, 7 meses atrás

Crie um programa em linguagem C que avalie e compare o desempenho de dois métodos de ordenação: um dos simples e outro dos rápidos (à sua escolha). Os algoritmos devem ordenar os mesmos vetores aleatórios, que devem começar com poucos números e gradualmente aumentarem de tamanho para atingir os limites práticos de cada método.
Ajude-me, por favor!
(Preciso para dia 29 sexta feira)

Soluções para a tarefa

Respondido por aleprezzi
2

Resposta:

#include <stdio.h>

#include <stdlib.h>

#include <locale.h>

#define TAM 10

int main()

{

setlocale(LC_ALL, "");

int numeros[TAM];

int i, aux, contador;

printf("Entre com dez números para preencher o array, e pressione enter após digitar cada um:\n");

for (i = 0; i < TAM; i++) {

scanf("%d", &numeros[i]);

}

printf("Ordem atual dos itens no array:\n");

for (i = 0; i < TAM; i++) {

printf("%4d", numeros[i]);

}

// Algoritmo de ordenação Bubblesort:

for (contador = 1; contador < TAM; contador++) {

  for (i = 0; i < TAM - 1; i++) {

    if (numeros[i] > numeros[i + 1]) {

      aux = numeros[i];

      numeros[i] = numeros[i + 1];

      numeros[i + 1] = aux;

    }

  }

}

printf("\nElementos do array em ordem crescente:\n");

for (i = 0; i < TAM; i++) {

printf("%4d", numeros[i]);

}

printf("\n");

return 0;

}

Explicação:

Metodo da Bolha (Bubble Sort) esse é o método mais lento...

Faz um teste pra ve se funciona. Ta um array com 10 posições esse exemplo.

Tem outros métodos mais eficientesm  por seleção, por inserção, etc.

Perguntas interessantes