| 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 >> Lenguajes De Programación >> Content
    Comparación de los algoritmos de ordenación
    Con literalmente docenas de algoritmos de clasificación disponibles , determinar qué funciona mejor con su sistema dependerá de la comparación de varios factores , como el tamaño de la lista , la velocidad o la complejidad del algoritmo, y si va a utilizar una clave para clasificar . Complejidad

    La complejidad de un algoritmo de clasificación se mide por O ( n), o el "orden de n ", donde n es el tamaño de la lista. Mide el número de pases que se necesita para ordenar la lista y calcula su mejor momento , lo peor y promedio para hacerlo. Complejidades comunes incluyen N como un mejor de los casos para las clases tales como la ordenación por inserción y la cáscara especie , n log n , ( utilizando un logaritmo en base 2 , no una base - 10 ) , que es la complejidad para el tipo de mezcla y heapsort , y n ² , que es más lenta que la primera vez y es la velocidad de ordenación por selección
    lista Condición

    veces usted sabrá cómo se organizan los elementos no ordenados en una lista. : Por ejemplo , si están casi ordenados , en orden inverso , o una lista con algunos artículos únicos . Este conocimiento ayuda a seleccionar un algoritmo eficiente para solucionar el problema . Por ejemplo , el uso de la ordenación por inserción para ordenar una lista en orden inverso tiene una duración de n ² , mientras que pila de clasificación se puede hacer más rápido , en el n log n tiempo. En una lista que está casi resuelto , la ordenación por inserción es más rápido que el almacenamiento dinámico de clasificación . Si la lista contiene un conjunto completamente al azar de datos , seleccione un algoritmo con un caso de complejidad media de n log n tiempo de funcionamiento , tales como pila de clasificación , ordenación rápida o fusionar especie .
    Lista Tamaño

    Algunos algoritmos son más difíciles de usar que otros, por lo que el número de elementos en una lista y con qué frecuencia usted necesita para ordenar puede ayudar a determinar el algoritmo que se elija . Géneros como la ordenación por inserción son rápidos y funcionan bien al ordenar listas más pequeñas , y son fáciles de implementar, pero son lentos con listas grandes. Ordena que utilizan un divide y vencerás algoritmo como quicksort e incorpórate tipo son más difíciles de implementar , pero las listas de clase más grandes más rápido que en los casos en promedio.
    Estabilidad

    Estabilidad algoritmo describe si el tipo mantiene el orden de los elementos en función de una clave de clasificación. Por ejemplo , utilizando el primer carácter como clave para una lista que tiene "John ", " Steve" y " Jim" en ese orden, un establo tipo de algoritmo de la lista de " John ", "Jim" y " Steve ", mientras que un algoritmo inestable puede o no puede resolver " Jim " antes de "John ". Combinar especie , tipo de inserción y burbuja tipo son estables , mientras que todos los algoritmos de tipo concha , ordenación por selección y pila de clasificación no son .

    Previous :

    next :
      Artículos relacionados
    ·Cómo mostrar Siguiente y Anterior en ColdFusion 
    ·¿Qué es MS Jerárquica FlexGrid 
    ·Cómo compilar un archivo de clases 
    ·Cómo convertir Hex Volver WEP de texto 
    ·Lo que está codificando Habilidades 
    ·Cómo utilizar las marcas de tiempo de Lamport 
    ·¿Qué es el Pico Coding 
    ·Cómo programar un programa de preguntas y respuestas e…
    ·Tipos de Lenguajes 
    ·Los mejores lugares para poner Registros de Aplicacione…
      Artículos destacados
    ·Cómo implementar índice posicional Usando Python 
    ·Cómo acceder Consulta: Uso no válido de null 
    ·Cómo calcular una expresión infija 
    ·Métodos Java Applet 
    ·Cómo agregar una nueva carpeta en un ListView con Visu…
    ·Cómo escribir un Blurb con un programa de Java 
    ·Cómo acceder a columnas de DataSet 
    ·Cómo determinar el número de líneas de código en un…
    ·¿Cómo saber las dimensiones de una matriz en Python 
    ·Java Certificación FAQs 
    Copyright © Conocimientos Informáticos http://ordenador.wingwit.com