ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Metodos De Ordenamiento


Enviado por   •  23 de Febrero de 2012  •  996 Palabras (4 Páginas)  •  1.312 Visitas

Página 1 de 4

METODOS DE ORDENAMIENTO

Uno de los problemas fundamentales en la ciencia de la computación es ordenar una lista de elementos, existe una infinidad de métodos de ordenamiento, algunas son simples e intuitivas, como el bubble sort o método de la burbuja, y otros son extremadamente complicados pero producen resultados mucho más rápido, como el Quicksort.

Los algoritmos de ordenamiento más comunes son:

Bubble sort

Heap sort

Insertion sort

Mearge sort

Quick sort

Selection sort

Shell sort

Radix

Los algoritmos de un ordenamiento pueden clasificarse en 2 de acuerdo a la complejidad de los mismos. La complejidad de los algoritmos e ordena por la palabra Big-O.

Por ejemplo:

O(N) significa que el algoritmo tiene una complejidad lineal, entre otras palabras toma 10 veces más tiempo operar un conjunto de 100 datos que en hacer 10 en un conjunto de 10 elementos. Si la complejidad fuera se duplica.

ANALISIS DE ALGORTIMOS.

Método de la burbuja.

Es te método es el más simple y antiguo para ordenar un conjunto de datos, es también el más lento. Tiene dos bucles for internos que recorren el vector comparando el elemento (j-esimo-1 j-esimo) y en caso de que este sea mayor hace un cambio de los elementos.

¿Cómo funciona?

Consiste en comparar pares de elementos adyacentes intercambiarlos entre si hasta que estén todos ordenados.

A {40, 21, 4, 9, 10, 35}

0 40 21 4

1 21 4 9

2 4 9 10

3 9 10 21

4 10 35 35

5 35 40 40

CODIGO FUENTE.

#include<stdio.h>

#include<conio.h>

#include<stdlib.h>

int burbuja(int A[], int ele);

int imprimir(int A[], int ele);

int burbuja(int A[],int n_x)

{

int i,j,temp;

for(i=n_x;i>=0;i--)

{

for(j=1;j<=i;j++)

{

if(A[j-1]>A[j])

{

temp=A[j-1];

A[j-1]=A[j];

A[j]=temp;

system("cls");

}

}

}

}

main()

{

int Arre[10],total=10,i;

printf("Metodo de la burbuja");

for(i=0;i<10;i++)

{

printf("\n Digite Valor: ");

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

}

burbuja(Arre,total);

imprimir(Arre,total);

getch();

}

int imprimir(int A[], int ele)

{

printf("Datos Ordenados\n");

for(int i=0; i<ele; i++)

{

printf("A[%d]=%d\n",i,A[i]);

}

}

...

Descargar como (para miembros actualizados)  txt (4.4 Kb)  
Leer 3 páginas más »
Disponible sólo en Clubensayos.com