Na assinatura do método particiona do Quicksort há um parâmetro chamado de que parece não ser utilizado na implementação. Então, poderia ser utilizado apenas os parâmetros nomes e ate?
private static int particiona(String[] nomes, int ate)
Na assinatura do método particiona do Quicksort há um parâmetro chamado de que parece não ser utilizado na implementação. Então, poderia ser utilizado apenas os parâmetros nomes e ate?
private static int particiona(String[] nomes, int ate)
Boa noite, Thiago! Como vai?
Onde isso ocorre? Poderia indicar pra mim para que eu possa dar uma olhada? Assim poderei te ajudar de forma efetiva!
Qualquer coisa é só falar!
Grande abraço e bons estudos, meu aluno!
Boa noite. Tudo bom?
A implementação do particiona
apresentada durante a explicação do Quicksort
é a seguinte:
private static int particiona(Nota[] notas, int inicial, int termino) {
int menoresEncontrados = 0;
Nota pivo = notas[termino - 1];
for(int analisando = 0; analisando < termino -1; analisando ++) {
Nota atual = notas[analisando];
if(atual.getValor() <= pivo.getValor()) {
troca(notas, analisando, menoresEncontrados);
menoresEncontrados++;
}
}
troca(notas, termino -1, menoresEncontrados);
return menoresEncontrados;
}
Em nenhum momento é usado o parâmetro inicial
. Uma alternativa seria:
private static int particiona(Nota[] notas, int inicial, int termino) {
int menoresEncontrados = inicial;
Nota pivo = notas[termino - 1];
for(int analisando = inicial; analisando < termino -1; analisando ++) {
Nota atual = notas[analisando];
if(atual.getValor() <= pivo.getValor()) {
troca(notas, analisando, menoresEncontrados);
menoresEncontrados++;
}
}
troca(notas, termino -1, menoresEncontrados);
return menoresEncontrados;
}