Java - ordenamiento- quicksort

   
Vista:
Imágen de perfil de Andrea

ordenamiento- quicksort

Publicado por Andrea (16 intervenciones) el 26/04/2016 19:26:57
Hola, necesito un poco e ayuda estoy en java un programa con clase emplado, id, nombre y sueldo en la principal debe de imprimir dependiendo que datos de ingresaron acomodarse en orden ascendente siguiendo la ID,,, ya hice todo solo no se como pasarlo para que lo imprima ordenado.

Principal

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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
package quicksort;
 
import java.io.*;
 
public class Quicksort {
 
    public static BufferedReader entrada = new BufferedReader(new InputStreamReader(System.in));
 
    public static void main(String[] args) throws IOException {
        // TODO code application logic here
 
        empleado a[] = new empleado[2];
 
        String nombre;
        int sueldo;
        int id = 0;
 
        for (int i = 0; i < a.length; i++) {
 
            System.out.println("Ingrese nombre");
            nombre = entrada.readLine();
            System.out.println("Ingese id");
            id = Integer.parseInt(entrada.readLine());
            System.out.println("ingrse el sueldo");
            sueldo = Integer.parseInt(entrada.readLine());
 
            a[i] = new empleado(nombre, id, sueldo);
        }
        System.out.println("Id" + "  |  " + "Nombre" + "  |  " + "Sueldo");
        for (int i = 0; i < a.length; i++) {
 
 
            System.out.println(a[i].getId() + "   " + a[i].getNombre() + "   " + a[i].getSueldo());
 
        }
    }
 
    static void Quicksort(int arr[], int p, int r) {
        if (p < r) {
            int q = Particion(arr, p, r);
            Quicksort(arr, p, q - 1);
            Quicksort(arr, q + 1, r);
        }
    }
 
    static int Particion(int arr[], int p, int r) {
        int x = arr[r];
        int i = p - 1, t;
        for (int j = p; j < r; j++) {
            if (arr[j] <= x) {
                i++;
                t = arr[i];
                arr[i] = arr[j];
                arr[j] = t;
 
                //temp=arr[i].getidy asi en los arrr
            }
        }
        t = arr[i + 1];
        arr[i + 1] = arr[r];
        arr[r] = t;
        return i + 1;
    }
}


clase
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
42
43
44
45
46
47
48
49
50
51
52
package quicksort;
 
public class empleado {
   //  int id;
    //rivate String nombre;
     //int sueldo;
    private int id;
    private String nombre;
    private int sueldo;
 
    public empleado(String nombre, int id, int sueldo) {
        this.id = id;
        this.nombre = nombre;
        this.sueldo = sueldo;
    }
 
    public empleado() {
        nombre="";
        id=0;
        sueldo=0;
    }
 
    public int getId() {
        return id;
    }
 
    public void setId(int id) {
        this.id = id;
    }
 
    public  String getNombre() {
        return nombre;
    }
 
    public void setNombre(String nombre) {
        this.nombre = nombre;
    }
 
    public int getSueldo() {
        return sueldo;
    }
 
    public void setSueldo(int sueldo) {
        this.sueldo = sueldo;
    }
 
 
 
 
 
 
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder