C language_sort algoritmo_inserción ordenación

Tipo de inserción

  • El principio básico
    comienza con el segundo número y compara cada número con el número anterior de atrás hacia adelante para encontrar la posición en la que debe insertarse. Después de encontrar la posición, mueva todos los elementos uno por uno y luego se inserta donde debería estar y la clasificación se completa después del bucle.

El código específico es el siguiente:

//直接插入排序(从小到大)
#include<stdio.h>
int main()
{
    
    
    int a[10]= {
    
    3,8,7,0,9,2,1,6,5,4};
    int i,j,temp;
    for(i=1; i<10; i++)
    {
    
    
        temp=a[i];  
        for(j=i-1; j>=0&&temp<a[j]; j--)//从后往前依次比较寻找插入位置 
            a[j+1]=a[j];//所有元素后移一位 
        a[j+1]=temp; //插入元素//为什么是j+1?因为在循环中减了个1,所以这里+1才是真正要插入的位置 
    } 
    for(i=0; i<10; i++)
        printf("%d ",a[i]);
    return 0;
}

Supongo que te gusta

Origin blog.csdn.net/qq_51366851/article/details/112988709
Recomendado
Clasificación