Ordenar Vetor por Seleção(Trocar valores diretamente)

0 respostas
M

Pessoal, preciso da ajuda de voces! Preciso ordenar um vetor pelo método de seleção e tenho que fazer isso na mão.
Tenho o código aqui, acredito que estou perto da solução final, mas não sei o que esta errado, aguem pode me ajudar?
Agradeço desde já! lol

package ordenacao;

import javax.swing.JOptionPane;

public class Ordenacao {

  public static void main(String[] args) {
    System.out.println(tam + " Posiçoes");
    preencherVetor();
    mostrarVetor();
    ordenarCrescente();
    
  }
  static int tam = Integer.parseInt(JOptionPane.showInputDialog("Informe o tamanho do vetor"));
  
  static int vetorOrdenado[] = new int[tam];
  static int vetor[] = new int[tam];
  
  public static void preencherVetor(){
    for(int i=0; i<vetor.length; i++){
      vetor[i] = (int)(1+Math.random()*100);            
    }
  }
  
  public static void mostrarVetor(){
    for(int i=0; i<vetor.length; i++){
      System.out.println(vetor[i]);
    }    
  }  
  
  public static void ordenarCrescente(){
      
      int menor=vetor[0],posMenor=0;
      
      for(int i=0;i<vetor.length;i++){
          for(int j=i+1;j<vetor.length;j++){
              if(vetor[j]<menor){
                  menor=vetor[j];                  
                  posMenor=j;                                    
              }              

          }
          vetorOrdenado[i]=menor;
          vetorOrdenado[posMenor] = vetor[i];
      }

      for(int c=0;c<vetorOrdenado.length;c++){
          System.out.println(vetorOrdenado[c]);
      }
    }
  
}
Criado 31 de março de 2012
Respostas 0
Participantes 1