Remover elementos repetidos de un array php ruby java c# vb javascript

Array remove duplicates items

Array remove duplicates items

Siguiendo la línea de publicar un post técnico y uno intelectual.. esta vez ha llegado el momento del post téncico.. lo que por mi actividad es muy fácil de escribirlo.. Esta entrada esta basada en la experiencia que tengo sobre algunos lenguajes y algo que es muy común de hacer y que muchos programadores escriben a su manera, unos porque no conocen el método y otros porque les gusta tener el control del código.

Este ejemplo se basa en eliminar los elementos duplicados de un arreglo, por ejemplo: (‘a’, ‘b’, ‘c’, ‘b’, ‘c’, ‘d’)

Php

$arreglo = array('a', 'b', 'c', 'b', 'c', 'd');
$filtro = array_unique($arreglo);

Ruby

arreglo = ['a', 'b', 'c', 'b', 'c', 'd']
filtro = arreglo.uniq

Java

Object[] arreglo = {'a', 'b', 'c', 'b', 'c', 'd'};
Set<Object> unst = new HashSet<Object>(Arrays.asList(arreglo));
Object[] filtro = unst.toArray();

C#

string[] arreglo = {'a', 'b', 'c', 'b', 'c', 'd'};
string[] filtro = arreglo.Distinct().ToArray();

Javascript

Array.prototype.unique = function() {
    var el = this.concat().sort();
    for (var i = 1; i < el.length; ) {
        if (el[i-1] === el[i])
            el.splice(i,1);
        else
            i++;
    }
    return el;
}
var filtro = ['a', 'b', 'c', 'b', 'c', 'd'].unique();

MaxScript

arreglo = #('a', 'b', 'c', 'b', 'c', 'd')
for i in arreglo.count to 1 by -1 do
(
    id = findItem arreglo arreglo[i]
    if (id != i) do deleteItem arreglo i
)

Seguramente hay muchas otras maneras de eliminar los elementos duplicados en los arreglos.. para lenguajes como maxscript, javascript o java.. pero al final se trata de lograr desarrollar la funcionalidad deseada.

El maestro de El Castor decia.. “No importa como lo hagas.. lo que importa es que funcione”..

Co-fundador de Qbit Mexhico, usuario de linux, Developer en tecnologías web.. Nicaragüense, centro en basketball, primer centro en rugby y pintor los fines de semana. Ortögrafo y ambientalista psicológico (de escritorio).. ese soy yo!

Si te ha servido compártelo y difunde nuestro blog..

Facebook Twitter LinkedIn Google+ Flickr YouTube Skype 

Compartir en...Tweet about this on TwitterPin on Pinterest0Share on LinkedIn0Share on Google+0Share on Facebook2