tengo un array en cual hay valores que se repiten
ej: 1,2,1,1,1,3,4,5,6,7,8,9,5,5,5
como puedo agrupar los numeros que se repiten?
seria algo asi: 1,2,3,4,5,6,7,8,9
| |||
Respuesta: Array agrupar Que tal, a ver si este codigo te puede ayudar
Código:
Como veras lo que hice fue crear un array vacio el cual lo va a llenar una funcion que devuelve un array, la funcion buscar la utilizo para saber si el valor ya existe en el segundo array asi no duplico, igualmente con este ejemplo no te daria siempre los numeros ordenados, en este caso si porque en el primer array aparecian por primera vez todo los numeros en orden si pusieras un array con los valores (1,1,9,5,9,9,5,5) te devolveria uno asi (1,9,5) si quisieras que esten ordenados ya tendrias que crear una funcion que ordene valores dentro de un array.var array1:Array = new Array(1,2,1,1,1,3,4,5,6,7,8,9,5,5,5); var array2:Array = new Array();//creo uno vacio donde voy a poner los datos function buscar(i:Number,a:Array,tope:Number):Boolean{ var j:Number=0 var encontrado:Boolean=false while((!encontrado)&&(j < tope)){ if (i==a[j]){ encontrado=true }else{ j++ } } return encontrado } function rellenar(a:Array,topea:Number):Array{ var i,j:Number var b:Array = new Array() i=0 j=0 while (i<topea){ if (buscar(a[i],b,b.length)){ i++ }else{ b[j]=a[i] i++ j++ } } return b } array2=rellenar(array1,array1.length,array2,array2.length) trace (array1) trace (array2) Espero haberte sido de ayuda. Hasta luego. El Duende. |