Prueba así. Este método es llamado ordenamiento por selección (el que has intentado hacer) y es muy ineficiente.
Puedes intentar crear el algoritmo de ordenamiento por inserción que a lo mejor te viene mejor.
Código Java:
Ver originalpublic static ArrayList<Integer> ordenar(ArrayList<Integer> vector){
//Hallamos el menor de todo el arreglo
ArrayList <Integer
> Resultado
= new ArrayList
<Integer
>(vector
);
int indice,menor;
int aux;
for(int i=0;i<Resultado.size();i++){
menor = Resultado.get(i);
indice = i;
aux = 0;
for(int j=i+1;j<Resultado.size();j++){
aux = Resultado.get(j);
indice = aux < menor ? j : indice;
menor = aux < menor ? aux : menor;
}
Resultado.set(indice,Resultado.get(i));
Resultado.set(i,menor);
}
return Resultado;
}
EDITO: Un ejemplo de ordenación por inserción
Código Java:
Ver originalpublic static ArrayList<Integer> ordenarInsertando(ArrayList<Integer> vector){
ArrayList <Integer
> Resultado
= new ArrayList
<Integer
>();
int valor;
boolean insertado_antes =false;
Resultado.add(vector.get(0));
for (int i=1;i<vector.size();i++) {
insertado_antes = false;
valor = vector.get(i);
int length = Resultado.size();
for(int j=0;j<length;j++){
if (Resultado.get(j)>=valor){
Resultado.add(j, valor);
insertado_antes = true;
}
}
if (!insertado_antes)
Resultado.add(valor);
}
return Resultado;
}