Trucos Linux, WIndows y Mas..

Ordenamiento por intercambio (burbuja)

import javax.swing.*;
public class Burbuja {
   public int [] vector;
 public Burbuja() {
   vector = new int[tamaño()];
 }
 public int tamaño(){
    int a = Integer.parseInt(JOptionPane.showInputDialog(“Tamaño del Vector??:”));
    return a;
 }
 public void leerDatos(){
    for(int i=0; i<vector.length; i++)
    vector[i] = Integer.parseInt(JOptionPane.showInputDialog(“Ingrese el dato:”));
 }
 public void ordenar(){
 int aux;
 for(int i=0; i<vector.length; i++){
    for(int j=0; j<vector.length-1; j++){
       if (vector[j]>vector[j+1]){
       aux = vector[j];
         vector[j] = vector[j+1];
         vector[j+1] = aux;
         }
     }
   }
  }
  public String imprimir(){
     String salida=”";
     for(int i=0; i<vector.length; i++)
      salida+=vector[i]+”\n”;
      return salida;
  }
 public static void main(String args[]){
    Burbuja burbuja = new Burbuja();
    burbuja.leerDatos();
    burbuja.ordenar();
    JOptionPane.showMessageDialog(null,burbuja.imprimir());
    System.exit(0);
  }
}

Este ejemplo ya funciona, incluso nos muestra como podemos utilizar otra forma de pedir datos e imprimirlos, de una forma mas visual, ejecútenlo en JCreator, analicen y comenten las lineas del programa.

Advertisement

3 comentarios

  1. esta dificil cambiarle las comillas

    marzo 11, 2011 a las 9:33 pm

  2. En el codigo esta mal las comillas que tiene, para que funcione simplemente tenemos que cambiar las comillas y el nombre del clase.
    Para que despues al compilarlo funcione. Nombre de la clase es Burbuja para cuando creamos uno nuevo este es el nombre que tenemos que usar para el archivo .java (Jcreator) para que pueda funcionar

    marzo 11, 2011 a las 9:34 pm

  3. remix

    //este es el metodo de insercion “class insercion”

    package ordenamiento;

    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;

    public class insercion extends JFrame{
    int a[]=new int[10];
    int i, n, j;
    int max, mayor;
    String salida1=”", salida2=”";
    JTextArea areaSalida=new JTextArea(6,6);
    JTextArea areaSalida2=new JTextArea(6,6);
    JTextField numero=new JTextField(15);

    public insercion(){
    super(“Ordenamiento por Insercion”);
    JLabel etiqueta=new JLabel(“Cuantos numeros quieres?”);
    JLabel etiqueta1=new JLabel(“Los numeros son:”);

    JButton capturar=new JButton(“Capturar”);
    capturar.addActionListener(
    new ActionListener(){
    public void actionPerformed(ActionEvent evento){
    captura();
    }
    }
    );
    JButton ordenar=new JButton(“Ordenar”);
    ordenar.addActionListener(
    new ActionListener(){
    public void actionPerformed(ActionEvent evento){
    insertar(a,n);
    }
    }
    );
    Container contenedor=getContentPane();
    contenedor.setLayout(new FlowLayout());
    contenedor.add(etiqueta);
    contenedor.add(numero);
    contenedor.add(capturar);
    contenedor.add(etiqueta1);
    contenedor.add(areaSalida);
    contenedor.add(ordenar);
    contenedor.add(areaSalida2);
    setSize(300,300);
    setVisible(true);
    }

    public void captura(){
    if (numero.getText().equals(“”)){
    JOptionPane.showMessageDialog(null,”Escriba un nombre”);
    numero.setText(“”);
    }
    else{
    a[i]=Integer.parseInt(numero.getText());
    salida2+=a[i]+”\n”;
    i++;
    numero.setText(“”);

    if (i==5){
    n=i;
    JOptionPane.showMessageDialog(null,”Fin de la captura”);
    }
    areaSalida.setText(salida2);
    }
    }

    public void muestra(int nn,int a3[]){
    for(int k=0;k<nn;k++)
    salida1+=a3[k]+"\n";
    areaSalida2.setText(salida1);
    }

    public void insertar(int lista[], int n){
    int x,i,k;
    for(i=1;i=0 && x<lista[k]){
    lista[k+1]=lista[k];
    lista[k]=x;
    k=k-1;
    if (k==-1) break;
    }
    lista[k+1]=x;
    }
    muestra(i,lista);
    }

    public static void main(String[] args) {
    insercion aplicacion1 = new insercion();
    aplicacion1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
    }

    marzo 11, 2011 a las 9:55 pm

Deja un comentario

Fill in your details below or click an icon to log in:

Logo de WordPress.com

You are commenting using your WordPress.com account. Log Out / Cambiar )

Twitter picture

You are commenting using your Twitter account. Log Out / Cambiar )

Facebook photo

You are commenting using your Facebook account. Log Out / Cambiar )

Connecting to %s

Seguir

Get every new post delivered to your Inbox.