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

Quick Short E Inserción Directa


Enviado por   •  11 de Febrero de 2014  •  373 Palabras (2 Páginas)  •  171 Visitas

Página 1 de 2

QuickShort

#include <stdio.h>

void quickSort( int[], int, int);

int partition( int[], int, int);

void main()

{

int a[] = { 9, 6, 4, 3, 8, 10, 7, 2, 5,1};

int i;

printf("\n\nEl arreglo que inserto es: ");

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

printf(" %d ", a[i]);

quickSort( a, 0, 9);

printf("\n\nEl arreglo ordenado es: ");

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

printf(" %d ", a[i]);

}

void quickSort( int a[], int l, int r)

{

int j;

if( l < r )

{

// divide and conquer

j = partition( a, l, r);

quickSort( a, l, j-1);

quickSort( a, j+1, r);

}

}

int partition( int a[], int l, int r) {

int pivot, i, j, t;

pivot = a[l];

i = l; j = r+1;

while( 1)

{

do ++i; while( a[i] <= pivot && i <= r );

do --j; while( a[j] > pivot );

if( i >= j ) break;

t = a[i]; a[i] = a[j]; a[j] = t;

}

t = a[l]; a[l] = a[j]; a[j] = t;

return j;

}

Impresión Pantalla Ejecución:

Inserción Directa

#include <stdio.h>

#include

...

Descargar como (para miembros actualizados)  txt (1.8 Kb)  
Leer 1 página más »
Disponible sólo en Clubensayos.com