Classifica Vetor
Publicado por Ricardo Sousa Guimarães 23/05/2007
[ Hits: 5.305 ]
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]); } }
Retorna o número elevado ao quadrado
Nenhum comentário foi encontrado.
Atenção a quem posta conteúdo de dicas, scripts e tal (1)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
Dongle Bluetooth 5.0 não funciona no Pop Os 22.04 (1)
Impressora Canon Ip 1800 (Drivers) 64 bit (2)
[Shell Script] Script para desinstalar pacotes desnecessários no OpenSuse
[Shell Script] Script para criar certificados de forma automatizada no OpenVpn
[Shell Script] Conversor de vídeo com opção de legenda
[C/C++] BRT - Bulk Renaming Tool
[Shell Script] Criação de Usuarios , Grupo e instalação do servidor de arquivos samba