
Enviado em 02/11/2020 - 00:29h
Boa noite a todos, estou estudando um algoritmo de quick sort para ordenar um vetor, porem quem adicionar no código dois contadores para contar quantas comparações e atribuições são feitas durante o método, contudo, não estou conseguindo saber ao certo onde devo colocar. Segue o código:/* Função de partição do vetor para o quick sort */
int particao(int *v, int ini, int fim) {
int aux;
int pivo = v[ini];
int i = ini + 1;
int j = fim;
while (i <= j)
{
while ((i <= j) && v[i] <= pivo) {
i++; //tentei atribuição aqui e não funcionou
}
while(v[j] > pivo) {
j--; //tentei atribuição aqui e não funcionou
}
if (i < j)
{
aux = v[i];
v[i] = v[j];
v[j] = aux; //tentei atribuição aqui e não funcionou
}
}
aux = v[ini];
v[ini] = v[j];
v[j] = aux;
//tentei atribuição aqui e não funcionou
return j;
}
/* Auxiliar para a ordenação por QUICK SORT */
void quick_sortR(int *v, int ini, int fim) {
int j;
if (ini < fim)
{ //tentei atribuição aqui e não funcionou
j = particao(v, ini, fim);
if(ini < (j -1))
//tentei comparação aqui e não funcionou
quick_sortR(v, ini, fim);
if((j+1) < fim)
//tentei comparação aqui e não funcionou
quick_sortR(v, j + 1, fim);
}
}
/* Ordenação por QUICK SORT */
void quick_sort(int *v, int tam) {
quick_sortR(v, 0, tam -1);
}
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
Como quebrar senha usando john the ripper
[Resolvido] VirtualBox can't enable the AMD-V extension
Como verificar a saúde dos discos no Linux
Como instalar , particionar, formatar e montar um HD adicional no Linux?
Não consigo instalar distro antiga no virtualbox nem direto no hd (17)









