日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java有向图邻接表入度_图的实现--邻接表(求出各顶点的出度和入度)

發布時間:2025/3/15 编程问答 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java有向图邻接表入度_图的实现--邻接表(求出各顶点的出度和入度) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

#include

using namespace std;

#include

#define MAX 100

struct ArcNode{//邊結點

int adjvex;//有向邊的另一個鄰接點的序號

ArcNode *nextarc;//指向下一個邊結點的指針

};

struct VNode{

int data;

ArcNode *head1;

ArcNode *head2;

};

struct LGraph{

VNode vertexs[MAX];

int vernum,arcnum;

};

LGraph lg;

void CreateLG(LGraph *lg)

{

int i=0;

ArcNode *pi;

int v1,v2;

//lg->vernum=lg->arcnum=0;

//scanf("%d%d",&lg->vernum,&lg->arcnum);

for(i=0;ivernum;i++)

lg->vertexs[i].head1=lg->vertexs[i].head2=NULL;

for(i=0;iarcnum;i++)

{

scanf("%d%d",&v1,&v2);

v1--;v2--;

pi=new ArcNode;

pi->adjvex=v2;

pi->nextarc=lg->vertexs[v1].head1;

lg->vertexs[v1].head1=pi;

pi=new ArcNode;

pi->adjvex=v1;

pi->nextarc=lg->vertexs[v2].head2;

lg->vertexs[v2].head2=pi;

}

}

void DeleteLG(LGraph *lg)

{

int i;

ArcNode *pi;

for(i=0;ivernum;i++)

{

pi=lg->vertexs[i].head1;

while(pi!=NULL)

{

lg->vertexs[i].head1=pi->nextarc;

delete pi;

pi=lg->vertexs[i].head1;

}

pi=lg->vertexs[i].head2;

while(pi!=NULL)

{

lg->vertexs[i].head2=pi->nextarc;

delete pi;

pi=lg->vertexs[i].head2;

}

}

}

int main()

{

//CreateLG(&lg);

int i;

int id,od;

ArcNode *pi;

while(1)

{

lg.vernum=lg.arcnum=0;

scanf("%d%d",&lg.vernum,&lg.arcnum);

if(lg.vernum==0) break;

CreateLG(&lg);

for(i=0;i

{

od=0;

pi=lg.vertexs[i].head1;

while(pi!=NULL)

{

od++;

pi=pi->nextarc;

}

if(i==0)

printf("%d",od);//輸出出度

else

printf(" %d",od);

}

printf("\n");

for(i=0;i

{

id=0;

pi=lg.vertexs[i].head2;

while(pi!=NULL)

{

pi=pi->nextarc;

id++;

}

if(i==0)

printf("%d",id);//輸出入度

else

printf(" %d",id);

}

printf("\n");

DeleteLG(&lg);

}

return 0;

}//測試數據如下:

//4 7 分別代表定點數和邊數

//1 4//弧尾和弧頭

//2 1

//2 2

//2 3

//2 3

//4 2

//4 3

原文:http://blog.csdn.net/yuzibode/article/details/18359343

總結

以上是生活随笔為你收集整理的java有向图邻接表入度_图的实现--邻接表(求出各顶点的出度和入度)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。