Buscar
Social
Ofertas laborales ES

Foro sobre Java SE > AYUDA URGENTE [ordenamiento]

hola buenas noches, necesito una ayuda urgente, necesito que a este codigo le agreguen el ordenamiento porfavor es de vida o muerte......

el programa consta de guardar nombres en un arreglo y ordenarlos!!!!

Desarrolle un programa que lea un archivo con nombres de personas, los ordene y los guarde en un arreglo o colección ya ordenados.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
package tarea2;

import java.util.Scanner;
/**
*
* @author Patrick Rosario
*/
public class Tarea2 {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {

Scanner entrada = new Scanner (System.in);

System.out.println("¿Cuantos nombres desea agregar?");

int nombres = 0;
Scanner valor = new Scanner (System.in);
nombres = valor.nextInt();

String[] nombre = new String[nombres];

for (int x=0; x<nombre.length; x++){
System.out.println("Ingres el "+(x+1)+" nombre");

nombre[x] = entrada.nextLine();

}

System.out.println("Lista de nombres almacenados: ");

for (int x=0; x<nombre.length; x++){
System.out.println(nombre[x]);

}

}

}

septiembre 28, 2016 | Registered Commenterpatrickrosario

hola, para ordenar los nombres necesitas comparar sus caracteres según el código ascii:

for(int i=0; i < nombres.length(); i++)
{
for(int j=0; j<nombres.length(); j++)
{

}
}

septiembre 29, 2016 | Unregistered Commenterhelp

se me posteó sin querer; corrijo
el 2o for (int j==; j< nombres.length-1; j++)
ten en cuenta que es [j][0] si comparamos la primer letra pero para hacerlo bien habria que comparar mas, con mas if o usar algún que otro método, empieza con eso y ve perfeccionandolo. Este estilo de ordenación se llama "en burbuja" y lo tienes documentado en internet.
/* .............................................. */

//dentro del for anidado

String aux = nombres[j];
if(nombres[j][0] > nombres[j+1][0] )
{
aux = nombres[j+1];
nombres[j+1] = nombres[j];
nombres[j] = aux;
}

septiembre 29, 2016 | Unregistered Commenterhelp

Hola, mete los nombres en el array sin ordenar, y después usa:

Arrays.sort(nombreDelArrayRelleno);

De esa forma, haciendo uso de la clase Arrays que tiene métodos para realizar operaciones sobre arrays, en este caso el metodo "sort" que esta sobrecargado, y este metodo, ordenara el array con el ordenamiento natural de la clase string(compareTo), que en este caso es orden alfabético.

Si por otro lado, lo que buscas es un algoritmo de ordenamiento, busca en google que los hay por ahi a miles...

Un saludo

septiembre 29, 2016 | Registered Commenterloderain

ALguien lo puede sobrescribir en el codigo de arriba PORFAVOR!!!! ??? :(

septiembre 29, 2016 | Registered Commenterpatrickrosario

Ya te han dado la solución a tu ejercicio de clase, ¿y todavía pretendes que te reescriban el código?

septiembre 29, 2016 | Registered Commenterchoces

InfoThis thread has been locked.