| 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 >> Perl Programming >> Content
    Cómo quitar duplicados de matriz Perl
    Perl y muchos otros lenguajes de programación utilizan arrays para almacenar una lista de datos . Sin embargo , Perl también es compatible con una estructura de datos específica llamada hash. A Perl asocia un determinado valor de hash con una clave . Un ejemplo es el hash { ene = > 31 , Mayo = > 30 } , en el que un mes es una clave y un número de días es un valor . Un hash de Perl hace posible el desarrollo de un algoritmo simple para eliminar duplicados de una matriz. La subrutina correspondiente tiene menos de diez comandos en Perl. Instrucciones
    Creación de un subprograma " Remove_duplicates , " un algoritmo
    1

    obtener datos de la matriz y declarar un hash "entradas ". Otra matriz llamada " new_array " contendrá los datos no duplicados . Los pasos 1-5 se ilustran con el código Perl en la Sección 2 , Paso 3 .
    2

    Asignar todos los elementos de la matriz como las claves hash y asignar valores hash igual a 1 para todas las teclas .

    3

    bucle a través de todos los elementos de la matriz y comprobar el valor hash asociado a este elemento .
    4

    Si el valor hash es 1 ( ver paso 3 ), el elemento es original o no duplicado y debe añadirse a " new_array . " En el mismo tiempo, este elemento está marcado , es decir, los cambios en el valor de hash a 0
    5

    Si el valor hash es 0 , entonces este elemento ha sido ya encontrado ; . Es decir, se duplica y se omitirá < . br>
    Ejemplo y Perl Programa
    6

    Eliminar duplicados de la matriz con los elementos ( 1 2 6 7 2 9 1 2 6 ) .
    7

    Imprimir las matrices iniciales y finales ( sin duplicados )
    8

    # Sección 1 # subrutina comienza

    sub remove_duplicates { my ($ array , $ new_array ) = @ _ ; . Paso # 1 . Leer % entradas arraymy iniciales = () ; # Paso 1 . Declarar el hash

    foreach (@ $ array ) { a continuación si existe las entradas de $ $ _ { } $ ; entradas { $ _} = 1 , # Paso 2 }

    foreach ( $ array @ ) {# Paso 3 . Recorrer toda la gama elementsif ( entradas de $ $ _ { }) { # Paso 5 . El elemento se omite si el valor hash es 0.push @ $ new_array , $ _ ; # Paso 4 . Agregar un elemento a la nueva matriz sólo si el valor hash es $ 1 entradas {$ _} = 0 , # Paso 4 . El elemento está marcado , es decir cambiar el valor hash a 0. } } }


    # Subrutina Ends

    # Sección 2MY $ array = [ qw ( 1 2 6 7 2 9 1 2 6 ) ] ; # Paso 1 : un ejemplo arraymy $ new_array = [ ] ; # remove_duplicates ( $ array , $ new_array ) ; print " @ $ array \\ n" # Paso 2 . Impresión arrayprint inicial " @ $ new_array \\ n"; # ​​imprimir arrayexit final;

    Previous :

    next :
      Artículos relacionados
    ·Tipos de protocolos MANET 
    ·Cómo utilizar expresiones regulares para comprobar una…
    ·Cómo instalar PPM De CPAN 
    ·Como prueba para ver si existe un archivo en Perl 
    ·Cómo depurar Perl 
    ·Cómo eliminar un archivo en Perl 
    ·Cómo leer De DOSBox en Perl 
    ·Las variables de nivel de clase en Perl 
    ·Cómo utilizar las líneas de un archivo como una lista…
    ·Acerca error Caminos depuración en Perl 
      Artículos destacados
    ·Cómo crear una cuadrícula de datos en Visual Basic 
    ·Cómo hacer la carrera de hacking 
    ·Cómo ocultar módulos, proyectos y macros de Usuarios 
    ·¿Puedo hacer que las aplicaciones Android con Visual B…
    ·¿Qué es Scarlett Fever 
    ·Cómo utilizar el VBScript objeto Ubicación 
    ·Cómo eliminar los duplicados de una cadena Lista Dos 
    ·Tutorial para hacer un juego en Java 
    ·¿Qué son las máquinas de CNC 
    ·Cómo hacer curvas en Radiant GTK 
    Copyright © Conocimientos Informáticos http://ordenador.wingwit.com