| Casa | Hardware | Redes | Programación | software | Criticar | Sistemas |   
Programación  
  • C /C + + Programming

  • Lenguajes De Programación

  • Delphi Programación

  • Programación Java

  • JavaScript Programación

  • Programación PHP /MySQL

  • Perl Programming

  • Python Programming

  • Rubí Programación

  • Visual Basics Programación
  •  
    Conocimientos Informáticos >> Programación >> Programación Java >> Content
    Combinar Clasificar en el Código Java
    Clasificación de listas de datos se presenta uno de los problemas más difíciles para los programadores , ya que es difícil de conceptualizar e implementar algoritmos de ordenación eficientes en lenguajes de programación . Clasificación requiere considerable copiar, mover y lectura de datos para trabajar . En consecuencia , los programadores se centran en el desarrollo de algoritmos de ordenación eficientes y genérico . Uno de ellos, el tipo de combinación , trabaja dividiendo una lista de valores de una y otra forma recursiva para " dividir y conquistar " el problema. Como una especie de combinación está pensado como una solución genérica , la mayoría de los lenguajes , como Java , tienen maneras de implementarlo. Combinar Clase

    Una fusión especie tiene una lista para ser ordenados y recursiva divide la lista hasta llegar a valores individuales , como los números individuales. La especie se recombina los números de forma ordenada , el tiempo de regresar una lista ordenada . Una clase de la clasificación básica en Java que contendrá una lista para ordenar, y llamar a una función principal de combinación de clasificación que define :
    clase

    Merge {

    public int [ ] x;

    public static void main ( String [] args ) {

    x = [ 5 , 6 , 3 , 4 , 7 , 8 , 10 , 2 ] ;

    mergesort (x, 0 , x . length-1 ) ;

    } }
    Merge Ordenar función

    Fuera de la clase principal residirá una función de ordenación de combinación. Esta función segmentos de un rango de números para ordenar la lista. Inicialmente , esta gama representará toda la lista, pero como el tipo de mezcla continua , tendrá sólo la mitad de la lista hasta llegar a las entradas individuales. Entonces , la función de clasificación de combinación se recombinar los elementos en grandes listas que se ordenan (Fuente 2 ) :

    public void mergesort (bajo int , int hi ) {

    if ( bajo < hi ) { int medio = (bajo + alta ) /2 ; mergesort (bajo, medio) ; mergesort ( media + 1 , hi ), merge (baja, media, alta ) ;} }
    < br > Basic Merge función

    La función de fusión combinará dos listas después de clasificarlos . Si la función recibe los elementos individuales , ordenará ellos. De lo contrario, tendrá dos listas separadas , y en función de los deseos de la orden del programador en orden ascendente o descendente :

    private void combinación ( int , int media baja , int hi ) {
    < p > int [ ] = new int copia [ x.length - 1 ] ;

    //Copiar las dos partes en la matriz helper for (int i = Baja ; i < = hi , i + + ) { copia [ i ] = x [ i ] ;}

    int i = Baja ; int j = media + 1 ; int k = bajo ; while ( i < = mediados && j < = hi ) {if ( copia [ i ] < = copia [ j ] ) { x [ k ] = copia [ i]; i + + ;} else { x [ k ] = copia [ j ], j + + ;} k + + ;} //Copiar el resto del lado izquierdo de la matriz en la matriz de destino while ( i < = centro ) { x [ k ] = copia [ i ], k + + , i + + ;} }


    < br > Combinar Ordenar Recurse

    la función " mergesort " divide de forma recursiva la lista. En primer lugar , se subdivide la lista original en medio de cada vez que se llama a sí mismo de forma recursiva. Cuando la recursividad alcanza un solo dígito , la función y luego retrocede y comienza a ordenar la lista. Cada vez que la función da marcha atrás a una llamada a la función anterior , se une las dos mitades de una lista más pequeña , con el tiempo de trabajo de nuevo a la lista completa. La función " merge " parece hacer todo el trabajo por la organización y la copia de los valores en la lista, pero el corazón de una fusión especie se encuentra en la función engañosamente simple " mergesort " .
    < Br >

    Previous :

    next :
      Artículos relacionados
    ·¿Cómo puedo obtener un rango de valores de la lista o…
    ·Cómo instalar Java en Windows Mobile teléfono celular…
    ·Cómo Involucrar API con Android 
    ·Cómo utilizar Java para leer Excel 
    ·Tipos de datos de JPA DataSource 
    ·Cómo escribir un contador de visitas en JSP 
    ·Cómo crear un Programa de Ping en Java 
    ·Cómo convertir Hashmap en Bean 
    ·Cómo construir un reloj simple para un Android en Ecli…
    ·Reglas de Negocio en Java 
      Artículos destacados
    ·Cómo copiar el botón Código para incrustar 
    ·Cómo hacer un videojuego simple 
    ·HTML para ocultar las barras de desplazamiento en VBScr…
    ·Cómo escribir secuencias de comandos PHP 
    ·Cómo aprender PHP Web Design 
    ·SolidWorks API Herramientas 
    ·Cómo hacer un laberinto en Java 
    ·Lista de las familias de fuentes 
    ·Cómo utilizar JavaScript para desarrolladores 
    ·Cómo copiar el contenido del archivo en Word y vicever…
    Copyright © Conocimientos Informáticos http://ordenador.wingwit.com