Tarea Metodos de Ordenamiento
Enviado por Rodriguez Banda Cesar Ellian • 6 de Abril de 2022 • Apuntes • 2.385 Palabras (10 Páginas) • 67 Visitas
[pic 1]
PROGRAMACIÓN I
NOMBRE DEL PROFESOR: HILARIO SALAZAR MARTINEZ
NOMBRE DEL ALUMNO: CESAR ELLIAN RODRIGUEZ BANDA
17 DE MARZO DE 2022
TAREA METODOS DE ORDENAMIENTO
1) Utilizar un arreglo de n elementos de tipo entero (int A[n])
2) Rellene automáticamente el arreglo A[n], use la función rand().
3) Implementar un programa de los siguientes algoritmos, use un menú y la
estructura switch:
1. Ordenamiento por burbuja
2. Ordenamiento por Selección
3. Ordenamiento por inserción
4) Medir el tiempo que se lleva cada método de búsqueda con n=1000,
n=10000, n=100000 n=1000000, grafique el n_datos/tiempo, haga una
sola grafica donde se pueda comparar los tres métodos de
ordenamiento (ver las siguientes diapositiva).
5) Escriba sus conclusiones de lo que observa en la gráfica.
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define n 100000
int main(){
long long int b=1;
int opcion,i,j,temp,first,key,A[n];
srand((int)time(NULL));
printf("Elige una opcion de ordenamiento: \n");
printf("1)Burbuja. 2)Seleccion. 3)Insersion. \n");
scanf("%d", &opcion);
for(i=0;i<n;i++){
A[i]=rand()%50;
}
clock_t start=clock();
switch(opcion){
case 1:
printf("Ordenamiento por BURBUJA\n");
for(i=1; i<=n; i++){
for (j=0;j<n;j++){
if (A[j+1]>A[j]){
temp=A[j];
A[j]=A[j+1];
A[j+1]=temp;
}
}
}
while(b<=n){
b++;
if(b%n==0.0){
printf("Numero: %d \n", b);
printf("el tiempo transcurrido es: %f \n", ((double)clock()-start)/CLOCKS_PER_SEC);
printf("\n");
}
}
break;
case 2:
printf("Ordenamiento por SELECCION \n");
for (i=n-1;i>0;i--){
first=0;
for (j=1;j<=i; j++){
if (A[j]<A[first]){
first=j;
}
temp=A[first];
A[first]=A[i];
A[i]=temp;
}
}
while(b<=n){
b++;
if(b%n==0.0){
printf("Numero: %d \n", b);
printf("el tiempo transcurrido es: %f \n", ((double)clock()-start)/CLOCKS_PER_SEC);
...