Classifica Vetor
Publicado por Ricardo Sousa Guimarães 23/05/2007
[ Hits: 5.495 ]
Download Script_Classifica.TXT
E aí pessoal do VOL!
Como essa é minha primeira contribuição, espero que vocês me perdoem os erros que possam aparecer, mas eu resolvi enviar um algoritmo que fiz aqui na faculdade na aula de Estrutura de Dados.
Ele funciona ordenando os valores dos vetores do menor para o maior.
#include <stdio.h> //Constantes #define TAM 15 #define F 0 #define V 1 //Definicao do tipo logico typedef int logico; //Definicao dos prototipos void particao(int[], int, int, int*); void quicksort(int[], int, int, int); void le(int[], int); void imprime(int[],int); main() { int v[TAM], i, f; //Leitura do vetor desordenado le(v,TAM); //Ordenacao do vetor f=TAM-1; i=0; quicksort(v,TAM,i,f); //Impressao do vetor ordenado imprime(v,TAM); return 0; } void particao(int c[], int inicio, int fim, int*k) { int i1,f1,ch; logico esq; i1=inicio; f1=fim; ch=c[inicio]; esq=V; while(i1<f1) { if(esq) { if(ch>c[f1]) { c[i1]=c[f1]; c[f1]=ch; i1++; esq=F; } else { f1--; } } else { if(ch<c[i1]) { c[f1]=c[i1]; f1--; esq=V; } else { i1++; } } } c[i1]=ch; *k=i1; } void quicksort(int c[], int tam, int i, int f) { int k,n; if(f>i) { particao(c,i,f,&k); quicksort(c,n,i,k-1); quicksort(c,n,k+1,f); } } void le(int v[], int tam) { int i; for (i=0;i<tam;i++) { printf("Digite o valor do elemento v[%d]\n",i); scanf("%d",&v[i]); } } void imprime(int v[],int tam) { int i; for(i=0;i<tam;i++) { printf("O valor do vetor na posicao v[%d]=%d\n",i,v[i]); } }
Nenhum comentário foi encontrado.
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Configurando o Conky para iniciar corretamente no sistema
3 configurações básicas que podem melhorar muito a sua edição pelo editor nano
Como colorir os logs do terminal com ccze
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
meu linux congela [RESOLVIDO] (5)
Preciso atualizar o Vim [RESOLVIDO] (8)
QUERO REVIVER UM COMPUTADOR ANTIGO, MAS TIVE PROBLEMAS COM OS LINUX QU... (9)