Classifica Vetor
Publicado por Ricardo Sousa Guimarães 23/05/2007
[ Hits: 5.705 ]
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]);
}
}
Intercalador de vetores em NCURSES com memória dinâmica
Nenhum comentário foi encontrado.
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Duas Pasta Pessoal Aparecendo no Ubuntu 24.04.3 LTS (42)
Assisti Avatar 3: Fogo e Cinzas (1)
Conky, alerta de temperatura alta (7)









