Ver Mensaje Individual
  #5 (permalink)  
Antiguo 11/08/2008, 10:55
Avatar de ciisteado
ciisteado
 
Fecha de Ingreso: enero-2008
Ubicación: Home Office
Mensajes: 111
Antigüedad: 17 años, 2 meses
Puntos: 0
De acuerdo Respuesta: Comparar 2 Arreglos de dimensiones distintas

Hola:

Excelente aporte u_goldman vaya que sirvio tu código es tal cual lo que necesitaba, estoy muy agradecido con tu ayuda...

Y para tener varias alternativas a la mano, despues de investigar y darle vueltas al problema tambien encontre esta solución:

Código HTML:
<%
	'Declara variables a utilizar
	Dim docs1
	Dim docs2
	Dim docs3(),docs4(),docs5(),docs6()
	Dim f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,Elemento,Nduplicado
	docs1=array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16)	
	docs2=array(1,4,7,12)
	'Llena docs3 con los valores de docs1 y docs2 (el orden realmente no importa)
	for f=LBound(docs2) to UBound(docs2)
		redim preserve docs3(g)
		docs3(g)=docs2(f)
		g=g+1
		for h=LBound(docs1) to UBound(docs1)
			redim preserve docs3(i)
			docs3(i)=docs1(h)
			i=i+1
		next
	next
	for j = LBound(docs3) To UBound(docs3)  'Llena un arreglo temporal(docs4) con los datos de docs3, para velidar los elementos repetidos entre estos 2 arreglos 
		redim preserve docs4(j)
		docs4(j) = docs3(j)
	next  
       
	For k = 0 To UBound(docs3)   'Recorre los elementos de los arreglos
		m = 0   
		For l = 0 To UBound(docs3)	'Compara si el elemento de docs3 es igual al elemento de docs4
			If docs3(k) = docs4(m) And l <> k Then	'Si son iguales entonces Elimina el valor repetido   
				docs3(l) = ""
			End If  
			m = m + 1   
		Next
	Next

	n=0 'Recorre cada elemento del arreglo,
	For Each Elemento In docs3   
		If Elemento <> "" Then 'Si el elemento es distinto de una cadena vacia, asigna el valor al arreglo final "docs5"
			redim preserve docs5(n) 
			docs5(n)=Elemento
			n=n+1
		end if
	Next
%> 
Lo cual da como resultado:

Arreglo Compuesto:

1,4,7,12,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16

Docs 1:
1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16

Docs 2:
1,4,7,12

Docs 5:
1,4,7,12,2,3,5,6,8,9,10,11,13,14,15,16

El código obviamente esta adaptado a mis necesidades, pero les dejo tambien el post original de este codigo para que le den un vistazo Eliminar duplicados en un Array

Asi pues ahi dejo dos soluciones practicas y sencillas a este problema, ya dependera de cada quien por cual decidirse...

Gracias a los que ayudaron ... Shiryu_Libra, u_goldman Master's mis respetos...

Saludos cordiales...