求数据结构大神帮我看看程序!!谢谢!!!
来源:互联网 发布:天猫大数据分析报告 编辑:程序博客网 时间:2024/04/30 00:46
写了一个图的深度遍历 但是没有按照想象中出现结果 通过调试 发现没有进入递归函数DFS 求大神指教啊 万分感谢
#include<iostream>
using namespace std;
typedef struct arcNode{
int adj;
double weight;
struct arcNode *next;
}ArcNode;
typedef char Vtype;
struct VNode{
Vtype data;
ArcNode *first;
};
struct AGraph{
VNode *vertices;
int vnum;
int type;
};
bool insert(AGraph &G,int i,int j,double weight)
{
ArcNode *pi=(ArcNode*)malloc(sizeof(ArcNode));
ArcNode *pj=(ArcNode*)malloc(sizeof(ArcNode));
if(!pi||!pj)
return false;
pi->adj=j;
pi->weight=weight;
pi->next=G.vertices[i].first;
G.vertices[i].first=pi;
return true;
}
void DFS(AGraph &G,int v)
{
bool *visited;
visited=(bool*)malloc(G.vnum*sizeof(bool));
visited[v]=true;
cout<<G.vertices[v].data<<" ";
for(ArcNode *p=G.vertices[v].first;p;p=p->next)
{
int w=p->adj;
if(!visited[w])
DFS(G,w);
}
}
void DFS(AGraph &G)
{
bool *visited;
visited=(bool*)malloc(G.vnum*sizeof(bool));
for(int i=0;i<G.vnum;i=i+1)
visited[i]=false;
for(i=0;i<G.vnum;i=i+1)
{ if(!visited[i])
DFS(G,i);
}
free(visited);
visited=false;
}
bool output(AGraph &G)
{
for(int i=0;i<G.vnum;i=i+1)
{
cout<<G.vertices[i].data;
ArcNode *p;
p=G.vertices[i].first;
while(p)
{
cout<<"("<<i<<","<<p->adj<<","<<p->weight<<")"<<" ";
p=p->next;
}
cout<<endl;
}
return true;
}
int main()
{
AGraph G;
cout<<"请输入顶点个数:"<<endl;
cin>>G.vnum;
G.vertices=(VNode*)malloc(G.vnum*sizeof(VNode));
int i;
for(i=0;i<G.vnum;i=i+1)
{
G.vertices[i].first=0;
}
for(i=0;i<G.vnum;i=i+1)
{
cout<<"请输入每个节点标记"<<endl;
cin>>G.vertices[i].data;
}
for(i=0;i<G.vnum;i=i+1)
{
cout<<G.vertices[i].data<<" ";
}
getchar();
cout<<"请输入相关数据"<<endl;
while(cin>>i)
{ int j,weigth;
cin>>j>>weigth;
insert(G,i,j,weigth);
cout<<"请输入相关数据"<<endl;
}
output(G);
DFS(G);
cout<<endl;
return 1;
}
- 求数据结构大神帮我看看程序!!谢谢!!!
- 帮我看看一个小程序,谢谢
- 想升级下显卡 求大神们帮我看看
- 程序不出结果大神帮我看看
- 大神帮我看看这段代码为什么运行不了,谢谢了
- 谁帮我看看我的程序,运行不起,谢谢了
- 请大家帮我看看,我这个程序里的错误,谢谢
- 高手帮我看看这个指向函数的指针的程序错误。。。。。。。谢谢
- 求大神帮解答javaEE这个问题,谢谢了
- 我只会用c,求大神帮忙谢谢
- 程序一直报错,不知道该如何改了,望各位大神帮我看看
- 高手帮我看看那里错了,谢谢了!
- 跪求 ~急 !!!!!帮我说下这程序是什么意思。要详细点的。先谢谢了
- 【心灵鸡汤】大神,我有个问题,帮我看看
- 各位大神帮我看看 为啥会找不到符号呢
- 请大神帮我看看这段代码
- 请各位大神帮我看看,这是什么原因造成的。。。。。。
- 请大神帮我看看这是什么问题
- 谷歌为何成为虚拟运营商服务
- Kaldi随笔(一)
- UDP打洞
- 闲聊CSS之关于clearfix--清除浮动
- Java之Iterator和Enumeration比较
- 求数据结构大神帮我看看程序!!谢谢!!!
- 动态库调用静态库示例讲解(3)
- String类
- Android 自定义Toast
- 11gR2RAC更改IP
- Notification通知可以显示到系统上方的状态栏(status bar)
- HDU ACM 1171 Big Event in HDU
- 欺诈发现
- Android保存图片到自定义文件夹并展示在系统图库