Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - SLACE

#1
Programación C/C++ / Re: Codigo Dijkstra en C
17 Febrero 2012, 03:18 AM
Para detallar un poco mas es que he estado trabajando en un proyecto acerca de una RED SOCIAL en C implementado con las TDAs listas grafo..etc el grafo que es una lista de vertices con su lista de adjacencia que en cada nodo esta una estructra d arcos que contien punteros a ls vertices de destino y de origen y su peso. ya poseo el grafo cargado con la lista de adjacencia en cada vertice.
Mi problema es en una parte del programa un modulo para SUGERIR AMIGOS a un usuario un (vertice en el grafo) sugerir los amigos de los que el usuario ya es pero solo sugerir hasta que acumule un valor de <100 por ejemplo recomendarle a al usuario A
A es amigo de: B (con un peso de 50) y C(con un peso de 20) ... B es amigo de: F (con un peso de 90)... C es amigo de: F (con un peso de 50)... y F es amigo de: H(con un peso de 28)
con este pequeño ejemplo la sugerencia para A seria F,H se le recomienda a F porque es amigo de C y acumula un valor 20+50 (y no porque es amigo de B porque acumula un valor de 50+90).. a H porque es amigo de F y acumula un valor de  20+50+28.....esto es un "pequeño ejemplo"
(dijkstra modificado) ya que obtengo el menor costo pero solo hay el vertice de origen lo otro se va recorriendo y obteniendo en el grafo..
realice un codigo pero tengo un problema obtengo usuarios (vertices) repetidos acontinuacion encontraran mi codigo
PD: las funciones como nodelistgetcont(n) y las demas son funcions de las respectivas TDAs de listas grafos..etc  la que mencione es dado un nodo obtiene el contenido puntero a una estructura y todo por lo del estilo...

List *dijkstraModif(Graph*g,GVertex *vertexIni,GVertex *vertexFin,cmpfn fn)
{
List *path;
GVertex *v,*v1,*v2;
GEdge *e;
NodeList *n,*n1,*n2;
int tentative=MAX_DIST,distance=0,contr=0;
path=listNew();
graphInit(g);
v=graphSearchVertex(g,gVertexGetContent(vertexIni),fn);
//v1=graphSearchVertex(g,gVertexGetContent(vertexFin),fn);
if(v!=NULL)
listAddNode(path,nodeListNew(v));
else
return path;

for(n2=listGetHeader(gVertexGetAdjacents(v1));n2!=NULL;n2=nodeListGetNext(n2))
{
e=nodeListGetCont(n2);

if(tentative>=gEdgeGetWeight(e))
{
tentative=gEdgeGetWeight(e);
v2=gEdgeGetDestination(e);
contr=contr+tentative; //Cambio para Sugerir amigo
if(v2!=NULL && contr<=CONSTW)//Cambio para Sugerir amigo hasta una compatibilidad <= CONSTW (100)
{
/*if(v!=v2)*/
listAddNode(path,nodeListNew(v2));
/*if(v1==v2)
return path;*/
}
if(contr>CONSTW) //Cambio para Sugerir amigo
return path;
distance=tentative;
}
else
distance=distance;

}
return path;
}


#2
Programación C/C++ / Codigo Dijkstra en C
14 Febrero 2012, 03:19 AM
Entiendo como funciona dijkstra que da el camino con menor costo entre dos vertices  pero al pasarlo a codigo en C no me funciona de la manera correcta a veces termino repitiendo vertices que se encuentran añadidos ya en my lista de vertices de sugerencia.
Lo que he hecho es coger el grafo una lista de vertices recorrer a traves de cada vertice y en cada vertice recorrer su lista de adyacencia y agregar cada vertice a la lista que da dijkstra pero ahi es donde pasa las repeticiones de algunos vertices y controlar que añada vertices hasta que llegue un peso acumulado de hasta 100.
Alguien que me pueda ayudar que entienda como implementarlo en C para que funcione adecuadamente.
#3
Programación C/C++ / Editor de Xml en C usando TDAs
16 Noviembre 2011, 00:45 AM
Hola amigos me podrian ayudar a resolver este problema en la implementacion de un "Editor de Xml" considerando los siguientes puntos, si me hace falta agregar otros mas, gracias por el aporte.
Como definir la TDA "etiqueta" que contega cada parametro que hay en los Xml
Como cargar estos datos Xml a la TDAs (lista, pilas, colas) usando la mejor para hacerlo sencillo y poder analizar otras funcionalidades del programa.
Comprobar si el Xml esta sin error de sintaxis
Busqueda de algun dato en los parametros
Editar el Xml desde el programa en C


Muchas gracias por su aporte
#4
WarZone / Ayuda en WARZONE
23 Marzo 2011, 00:48 AM
Hola amigos recien estoy iniciandome en este maravilloso mundo de la informatica, hacking y todo aquello para llegar a ser un hacker etico
se ligeramente como funcionan las cosas en este ambito y ahora estoy en la U iniciando mis estudios en Ingenieria de Ciencias Computacionales especializacion en Sistemas Tecnológicos.
Deseo que me ayuden con que temas debo comenzar a aprender para convertirme en un execelente hacker y pienso que este sitio web es de lo mejor para lograr mi objetivo.
Desearia que como hackers avanzados me ayuden a entender un poco como resolver los retos en WARZONE, y comenzar a convertirme en un hacker etico
Muchas gracias por su apoyo.