Olá,
O método de ordenação por seleção normal (onde o menor elemento é encontrado e colocado na primeira posição e assim consecutivamente até que todo o vetor seja ordenado) é dado pelo algoritmo:
selecao<-function(vet)
{
tam<-length(vet)
for(i in 1:tam)
{
pm<-which.min(vet[i:tam])
pm<-pm+i-1
temp<-vet[i]
vet[i]<-vet[pm]
vet[pm]<-temp
}
return(vet)
}
Como posso alterar esse código para que a busca seja feita pelo maior elemento e este seja colocado na última posição?
Pensei em algo assim:
selecao<-function(vet)
{
tam<-length(vet)
for(i in tam:1)
{
pm<-which.max(vet[tam:i])
pm<-pm+ ??
temp<-vet[i]
vet[i]<-vet[pm]
vet[pm]<-temp
}
return(vet)
}
Porém, não sei que atribuição dar ao novo pm para que a ultima colocação seja desconsiderada.
Agradeço desde já!
Att,
Jackeline