¿Cómo evitar valores de cadenas duplicadas en un algoritmo de ordenamiento de burbuja?

Genesis_Kitty:

Estoy tratando de averiguar cómo puedo evitar la impresión de nombres duplicados en mi algoritmo de ordenación.

La razón por la que estoy haciendo caso omiso de la cadena vacía es que el sistema estoy poniendo en práctica, es un sistema de reserva de billetes, que muestra una lista de nombres en lugar de sólo las ranuras vacías.

Un poco de ayuda puede complacerme?

String[] name={"fiona","vacant","allen","fiona","david","vacant","vacant"};
        for (int i = 0; i <= (name.length-1); i++){
            for (int j = i+1; j < name.length; j++ ){
                if (name[i].compareTo(name[j])>0) {
                    String temp = name[i];
                    name[i] = name[j];
                    name[j] = temp;
                }
            }
            if (!name[i].equals("vacant")) {
                System.out.println(name[i] + " ");
            }
        }
Dmitry Pisklov:

Sólo tienes que comprobar si el nombre que está imprimiendo es el mismo que el anterior:

String[] name={"fiona","vacant","allen","fiona","david","vacant","vacant"};
for (int i = 0; i <= (name.length-1); i++){
    for (int j = i+1; j < name.length; j++ ){
        if (name[i].compareTo(name[j])>0) {
            String temp = name[i];
            name[i] = name[j];
            name[j] = temp;
        }
    }
    if (!name[i].equals("vacant") && (i == 0 || !name[i-1].equals(name[i]))) {
        System.out.println(name[i] + " ");
    }
}

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=297026&siteId=1
Recomendado
Clasificación