Пример #1
0
void graphLinkVertices(Graph *G, GVertex *source, GVertex *destination, int weight, Generic ExtraInfo)
{
	GEdge *a=NULL;
	NodeList *pNodo=NULL;

	a = (GEdge *)malloc(sizeof(GEdge));
	if(a)
	{
		a->source = source;
		a->destination = destination;
		a->weight = weight;
                a->ExtraInfo = ExtraInfo;

		pNodo=nodeListNew(a);
		if(pNodo)
		{
			listAddNode(source->LAdjacents, pNodo);
		}
		else
		{
			free(a);
			a = NULL;
		}
	}
}
Пример #2
0
void graphAddVertex(Graph *G, GVertex *v)
{
	NodeList *pNode=NULL;
	
	pNode = nodeListNew(v);
	if(pNode)
	{
		listAddNode(G, pNode);
	}
}
Пример #3
0
List *listReadFile(char *fileName, readfn readLine){
    List *L = listNew();
    FILE *F = fopen(fileName, "r");
    if (F==NULL)	
	return(NULL);
    while(!feof(F)){
        Generic g;
        g = readLine(F);
        if(!feof(F))
            listAddNode(L, nodeListNew(g));
    }
    return L;
}