Foros del Web » Programando para Internet » PHP »

Mostrar Amigos en Comun Eficazmente

Estas en el tema de Mostrar Amigos en Comun Eficazmente en el foro de PHP en Foros del Web. Hola, soy nuevo en el foro. Tengo un trabajo en la universidad necesito hacer un algoritmo de amigos en comun que sea efectivo y no ...
  #1 (permalink)  
Antiguo 30/07/2010, 13:53
 
Fecha de Ingreso: julio-2010
Mensajes: 2
Antigüedad: 14 años, 3 meses
Puntos: 0
Mostrar Amigos en Comun Eficazmente

Hola, soy nuevo en el foro.

Tengo un trabajo en la universidad necesito hacer un algoritmo de amigos en comun que sea efectivo y no consuma mucho procesador

estoy usando una tabla friends con la siguente estructura:

| id | friend_1 | friend2 | status |

pero me di cuenta que usando esta tabla al correr la funcion amigos en comun tiene que hacer billones de iteracciones, use el metodo que encontre en esta misma web

[URL="http://www.forosdelweb.com/f18/amigo-mis-amigos-amigos-comun-790972"]http://www.forosdelweb.com/f18/amigo-mis-amigos-amigos-comun-790972[/URL]

quiero saber si hay una manera facil y efectiva. ¿como lo hace hi5 o facebook?.. no me importa restructurar todo.

Última edición por ratasxy; 30/07/2010 a las 14:02
  #2 (permalink)  
Antiguo 30/07/2010, 14:06
 
Fecha de Ingreso: mayo-2006
Ubicación: Bogotá
Mensajes: 2.061
Antigüedad: 18 años, 6 meses
Puntos: 50
Respuesta: Mostrar Amigos en Comun Eficazmente

mire puede hacer una tabla amigos. Supongamos que queremos concoer los amigos en comun de pablo y juancho pablo codigo 1 y juancho codigo 2

IDpersona------IDamigo
1---------3
1---------4
1---------5
1---------6
1---------7
2---------4
2---------6
2---------8
2---------10

para saber los amigos de Pablo seria

Código:
select IDamigo from amigos where IDPersona =1
para saber los amigos en común de Jauncho y Pablo sería algo asi como:

Código:
select IDamigo from amigos where IDPersona = 2 and IDamigo in (select IDamigo from amigos where IDPersona =1);
resultado; 4,6

"Creo que hay mejores formas de hacer la consulta pero esa funciona para que se oriente"

Lo unico que faltaria es mejorar la consulta para que muestre el nombre de los amigos en comun "por el momento muestra es el codigo" y listo
  #3 (permalink)  
Antiguo 30/07/2010, 14:07
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Mostrar Amigos en Comun Eficazmente

pues la eficacia viene de la consulta de SQL, no de la programación en PHP....

así que, esto no tiene nada que ver con este foro...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: comun
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:45.