Matriz :: único

Array :: Unique es una matriz de empate que permite solo valores únicos.
Descargar ahora

Matriz :: único Clasificación y resumen

Anuncio publicitario

  • Rating:
  • Licencia:
  • Perl Artistic License
  • Precio:
  • FREE
  • Nombre del editor:
  • Gabor Szabo
  • Sitio web del editor:
  • http://search.cpan.org/~szabgab/

Matriz :: único Etiquetas


Matriz :: único Descripción

Array :: Unique es una matriz de empate que permite solo valores únicos. Array :: Única es una matriz de empate que permite solo valores únicos.Synopsis Usar matriz :: único; Tie @A, 'Array :: Único'; Ahora use @a como una matriz regular. Este paquete le permite crear una matriz que permita solo una ocurrencia de cualquier valor. En otras palabras, no importa cuántas veces ponga en 42, mantendrá solo la primera ocurrencia y el resto será Caído. Utilice el módulo a través de TIE y una vez que ató su matriz a este módulo, se comportará correctamente. Suficiente se verifica con el operador 'EQ', por lo que, entre otras cosas, es sensible a la caja. Un efecto secundario, el módulo no permite undef. Como valor en la matriz.Examples Use la matriz :: única; Tie @A, 'Array :: Único'; @a = qw (a b c a d e f); PUSH @A, QW (x B Z); Imprimir "@an"; # a b c d e f x zwhen. USTED está recopilando una lista de elementos y desea asegurarse de que haya solo una ocurrencia de cada elemento, tiene varias opciones: 1) usando una matriz y extrayendo los elementos únicos más adelante. Puede usar una matriz regular para mantener este conjunto único de valores y eliminar duplicados en cada actualización que mantenga la matriz siempre única o elimine los duplicados antes de que desee usar la función de singularidad de la matriz. En cualquier caso, podría ejecutar una función, llame a @A = única_value (@a); El problema con este enfoque es que tiene que implementar la función única_value (ver más adelante) y debe asegurarse de que no olvide llamar. eso. Yo diría que no confíes en recordar esto. Hay una buena discusión al respecto en la 1ª edición del libro de cocina PERL de O'Reilly. He copiado las soluciones aquí, puedes ver más discusión en el libro. ------------------------------------------ Extraer elementos únicos de una lista (Sección 4.6 en The PERL Cookbook 1st ED.) # Se verá sencillo% visto = (); @uniq = (); foreach $ item (@list) [a menos que ($ visto {$ item _ item}) {# si llegamos aquí no lo hemos visto antes de ver $ {$ item} = 1; PUSH (@uniq, $ artículo); }} # Más rápido% visto = (); Foreach $ Artículo (@list) {Push (@uniq, $ Artículo) a menos que se ven $ {$ item} ++; } # Más rápido pero diferente% visto; Foreach $ Artículo (@list) {$ visto {$ item} ++; } @uniq = teclas% visto; # Más rápido e incluso más diferente% visto; @uniq = grep {! $ visto {$ _} ++} @list; ---------------------------------------- 2) Usar un hash algunas personas usan las llaves de un hash para mantener los artículos y poner un valor arbitrario como los valores del hash: para construir una lista de dicha:% única = mapa {$ _ => 1} qw (uno dos uno uno dos tres tres cuatro!); Para imprimirlo: imprimir unirse ",", ordenar las teclas% únicas; Para agregar valores a él: $ único {$ _} = 1 foreach qw (uno después de los nueve oh nueve); Para eliminar los valores: Eliminar @unique {qw (oh nueve)}; Para verificar si un valor está ahí: $ único {$ valor}; #, por eso me gusta usar "1" como mi valor (gracias a Gaal Yahas para los ejemplos anteriores), hay tres inconvenientes que veo: 1) Escriba más.2) Es posible que su lector no entienda al principio, ¿por qué usó? Hash y cuáles serán los valores. Decidí escribir este módulo porque me frustraba por mi falta de entender lo que está sucediendo en ese código que mencioné. Además, pensé que podría ser interesante escribir esto y luego lo comparar. Además, es bueno que se muestre su nombre en luces brillantes en todo CPAN ... o al menos en un Module.Array :: Unique le permite atar un aray a Hmmm, a sí mismo (?) Y se asegura de que los valores de la matriz son Siempre único. Porque está escribiendo esto, no estoy seguro de si realmente recomiendo su uso. Diría que se adhiere a la versión de hash y documentar que la variable está agregando una lista única de valores.4) Uso de los sostenes reales Hay módulos en CPAN que le permiten crear y mantener conjuntos. No he comprobado ninguno de esos, pero supongo que solo tienen una gran excesiva para esta funcionalidad como única :: Array. Requisitos: · Requisitos de Perl: · Perl


Matriz :: único Software relacionado

Opciones.pm

Options.pm es un módulo de perl de PERSING de línea de comandos que significa imitar la sintaxis del módulo T.p.usage.options. ...

208

Descargar