Enviado em 10/06/2021 - 18:09h
Olá Pessoal,#include <stdlib.h>
#include <stdio.h>
void quick_sort(int array[], int primeiro, int ultimo){
int i, temp, baixo, alto, separador;
baixo=primeiro;
alto=ultimo;
separador=array[(alto+baixo)/2];
do{
printf("Passei aqui... \n");
for(i=0; i<5; i++){
printf("%d ", array[i]);
}
printf("\n");
while(array[baixo]<separador){
baixo++;
}
while(array[alto]>separador){
alto--;
}
if(baixo<=alto){
temp=array[baixo];
array[baixo++]=array[alto];
array[alto--]=temp;
}
printf("\nwhile(%d<=%d)\n", baixo, alto);
}while (baixo<=alto);
printf("\n(%d<%d)\n", primeiro, alto);
if((primeiro<alto)){
printf("Entre no condicional primeiro<alto \n");
quick_sort(array, primeiro, alto);
}
printf("\n(%d<%d)\n", baixo, ultimo);
if((baixo<ultimo)){
printf("Entre no condicional baixo<ultimo \n");
quick_sort(array, baixo, ultimo);
}
}
int main(){
//int valores[100], i;
//for(i=0; i<100; i++){
// valores[i]=rand()%100;
// }
int valores[5]={5,3,4,1,2}, i;
quick_sort(valores, 0, 4);
for(i=0; i<5; i++){
printf("%d ", valores[i]);
}
}
Passei aqui...
5 3 4 1 2
while(1<=3)
Passei aqui...
2 3 4 1 5
while(3<=2)
(0<2)
Entre no condicional primeiro<alto
Passei aqui...
2 3 1 4 5
while(2<=1)
(0<1)
Entre no condicional primeiro<alto
Passei aqui...
2 1 3 4 5
while(1<=0)
(0<0)
(1<1)
(2<2)
(3<4)
Entre no condicional baixo<ultimo
Passei aqui...
1 2 3 4 5
while(4<=2)
(3<2)
(4<4)
1 2 3 4 5
Automatizando digitação de códigos 2FA no browser
Resolver problemas de Internet
Como compartilhar a tela do Ubuntu com uma Smart TV (LG, Samsung, etc.)
Como converter imagens PNG/JPEG para SVG em linha de comando
Fez porcaria no teu repositório Git? Aprenda a restaurar uma versão anterior do seu código!
Restaurando Fontes de Download do Hydra no Linux
Atualizando "na marra" o YT-DLP quando começa a dar erro de downloads
Como instalar o WPS com interface e corretor ortográfico em PT-BR no Arch Linux
Linux mint não desliga corretamente mesmo mexendo no grub (1)