Insertion Sort

c:
/*
-Victor de la Rocha
-vyk2rr@gmail.com
-www.algoritmia.info
-Jueves 10/AGO/05
-Programa 2, Practica 1
-Insertion Sort (Ordenamiento por insercion)
-Program that orders an adjustment with the arrangement algorithm 'insertion sort'
-Programa que ordena un arreglo con el algoritmo de ordenacion 'ordenamiento por insercion'
*/

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

int fillrand(int A[],int N,int R){
         int c;
         for(c=1;c<=N;c++){
                 A[c]=rand()%R;
             }     
         return 1;
     }

int insertionsort(int A[],int N){
         int i,k,AUX;
         for(i=2;i<=N;i++){
                 AUX=A[i];
                 k=i-1;
                 while(k==1&#038;&#038;AUX<A[k]){
                         A[k+1]=A[k];
                         k=k-1;
                     }
                 A[k+1]=AUX;
             }
         return 1;
     }

int salida(int A[],int N){
         int c;
         for(c=1;c<=N;c++){
                 printf("%d, ",A[c]);
             }
         return 1;
     }

void main(){
         int A[10];
         randomize();
         clrscr();
         fillrand(A,10,100);
         printf("INSERTION SORT\n");
         printf("Datos a ordenar: \n");
         salida(A,10);
         printf("\n\nDatos ordenados: \n");
         insertionsort(A,10);
         salida(A,10);
         getch();
     }

/*
INSERCION(A,N)
{El algoritmo ordena los elementos del arreglo utilizando el método de inserción directa. A es un arreglo de N elementos}
{I, AUX y K son variables de tipo entero}
1. Repetir con I desde 2 hasta N
        Hacer AUX <--  A[I] y K <--  I – 1
        1.1 Repetir mientas K =  1) y (AUX < A[K])
                Hacer A[K+1] <--  A[K] y K <--  K - 1
                1.2 {Fin del ciclo del paso 1.1}
                Hacer A[K+1] <--  AUX
2. {Fin del ciclo del paso 1}
*/

Arreglo original 140, 10, 5, 9, 16, 8, 0, 1, 52 Arreglo ordenado 0, 1, 5, 8, 9, 10, 16, 52, 140
¿Ya le viste algún error? Dejanos tu correción ;-)

Antes de comentar: Gran parte de los ejercicios propuestos no tienen librerías debido a que Wordpress elimina los tags HTML. Si sabes/tienes/conoces las librerías que hacen falta, déjalo en los comentarios.

Otro punto antes de comentar, Si vas a sugerir un segmento de código en algún lenguaje debes hacerlo así:

De esta manera el código sale coloreado.

Otro punto importante para muchos que sienten que se les ignora: Todos los comentarios los reviso y en su debido momento los apruebo, pero ojo con el último párrafo.

Para poner los símbolos de las librerías sin que desaparezcan, debes escribir los símbolos de mayor > y menor qué < con su entidad HTML correspondiente, así como el símbolo de &

Mis Algoritmos se reserva el derecho de alterar, publicar o no los comentarios así como cambiar estas reglas de uso.

Si estas de acuerdo, adelante puedes comentar :)

P.D. No le hago tareas a nadie, mejor hagan la mía :P