InicioOfftopicCódigo JAVA Quicksort Sencillo

Código JAVA Quicksort Sencillo

Offtopic5/4/2011
Hola taringueros

En esta ocasión les traigo a los que necesitan un código de JAVA que no use tantas cosas como me he dado cuenta en algunas partes sobre este código de Java de Quicksort espero sea útil como a mi me lo fue.


Este código lo hize solo con JOption y un Objeto sencillo con datos primitivos es mas sencillo espero les sirva!!!!1


import javax.swing.JOptionPane;
/*
* @uthor: Sir FaCu.....
* xfiire: facu1
*/
public class Quicksortorden
{
mercado cab=null;
mercado fin=null;
mercado aux=null;
public static void main(String[] args)
{
Quicksortorden a=new Quicksortorden();
a.menu();
}
void menu()
{
int op=0;
do{
op=Integer.parseInt(JOptionPane.showInputDialog("QUICKSORTnnt1. CREAR MERCADOnt2. AGREGAR MERCADOnt3.ORDENAR QUICKSORTnt4.SALIR");
switch(op)
{
case 1:crear();
break;
case 2:agregar();
break;
case 3:aux=cab;
while(aux!=null)
{
quick(aux,0,20);
quickpresion(aux);
aux=aux.sig;
}
break;
}
}while(op!=4);
}
void crear()
{
if(cab==null)
{
cab=new mercado();
}
else
{
JOptionPane.showMessageDialog(null,"YA EXISTE UN MERCADO SERA REDIRECCIONADO A AGREGAR";
agregar();
}
}
void agregar()
{
if(cab==null)
{
JOptionPane.showMessageDialog(null,"NO EXISTE UN MERCADO SERA REDIRECCIONADO A CREAR";
crear();
}
else
{
aux=new mercado();
fin.sig=aux;
fin=aux;
}
}
static void quick(mercado aux, int p, int r)
{
System.out.println("quick ini";
if(p < r)
{
System.out.println("p es "+p+" r= "+r);
int q = dividir(aux, p, r);
quick(aux, p, q - 1);
quick(aux, q + 1, r);
}
System.out.println("quick fin";
}
static int dividir(mercado aux, int p, int r)
{
System.out.println("partir";
int x = aux.vec[r];
int i = p - 1, t;
System.out.println("p es "+p+" r= "+r+"i es "+i);
for(int j = p; j < r; j++)
{
if(aux.vec[j] <= x)
{
i++;
t = aux.vec;
aux.vec = aux.vec[j];
aux.vec[j] = t;
}
}
t = aux.vec[i + 1];
aux.vec[i + 1] = aux.vec[r];
aux.vec[r] = t;
return i + 1;
}
public void quickpresion(mercado aux)
{
String cad="";
while(aux!=null)
{
for(int i=0;i<10;i++)
{
cad=cad+" - "+String.valueOf(aux.vec)+" - ";
}
aux=aux.sig;
}
JOptionPane.showMessageDialog(null,"ORDENAMIENTO QUICKSORT: n "+cad);
}

}
Datos archivados del Taringa! original
0puntos
7,255visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
2visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

f
facusantos🇦🇷
Usuario
Puntos0
Posts1
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.