
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);
}
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
\Boot sem espaço em disco (Fedora KDE Plasma 42) (2)
Programa fora de escala na tela do pc (38)
Mint Xfce não mantém a conexão no wi-fi (2)









