Ordenar vetor com algoritmo Insertion Sort
Publicado por Santiago Staviski (última atualização em 22/06/2010)
[ Hits: 53.951 ]
Homepage: http://allenkonstanz.blogspot.com
Ordena um vetor em ordem crescente ou decrescente usando um método de ordenação Insertion Sort.
/*Autor: Allen Konstanz * Web: allenkonstanz.blogspot.com */ #include <stdio.h> void insertionSortD(int array[], int tamanho) { int i, j, tmp; for (i = 1; i < tamanho; i++) { j = i; while (j > 0 && array[j - 1] < array[j]) { tmp = array[j]; array[j] = array[j - 1]; array[j - 1] = tmp; j--; } } } void insertionSortC(int array[], int tamanho) { int i, j, tmp; for (i = 1; i < tamanho; i++) { j = i; while (j > 0 && array[j - 1] > array[j]) { tmp = array[j]; array[j] = array[j - 1]; array[j - 1] = tmp; j--; } } } int main(int argc, char** argv) { int array[100], tamanho, ordem; printf("\n\n\t Entre com o número de termos...: "); scanf("%d", &tamanho); printf("\n\t Entre com os elementos do array...:"); for(int i = 0; i < tamanho;i++){ printf("\nDigite o %dº número: ",i+1); scanf("%d",&array[i]); } printf("\n\t Digite 1 para ordernar o array em ordem crescente ou 2 para ordem decrescente: "); scanf("%d",&ordem); if (ordem == 1){ insertionSortC(array,tamanho); printf("\nArray em ordem crescente: "); for(int i=0; i<tamanho; i++){ printf("\n\t\t\t%d", array[i]); } }else if (ordem ==2) { insertionSortD(array,tamanho); printf("\nArray em ordem decrescente: "); for(int i=0; i<tamanho; i++){ printf("\n\t\t\t%d", array[i]); } } return 0; }
Uma ajuda para quem gosta de Geometria Analítica
EXPRESSÕES ARITMÉTICAS - PARTE 1
Nenhum coment�rio foi encontrado.
Comparação entre os escalonadores BFQ e MQ-Deadline (acesso a disco) no Arch e Debian
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Converter os repositórios Debian para o novo formato com as chaves
Instalando Spotify no Debian 13
Realizar overclock no Miyoo Mini (plus ou normal)
linux mint reconhece microfone de lapela como fone de ouvido sem micro... (3)
Como desinstalar o GIMP? [RESOLVIDO] (1)