资源简介
神秘国度的爱情故事 算法与数据结构课程设计
代码片段和文件信息
#include
#define MAXNODE 64
#define NULL 0
using namespace std;
/*邻接表存储结构*/
typedef struct arc
{int adjvex; //邻接点在顶点中的下标
struct arc *next;
}ArcNode;
typedef struct VexNode
{
int leftright;
ArcNode *firstarc;//指向第一邻接点的指针
}VerNode;
typedef VerNode AdjList[MAXNODE];
/*创建图*/
int visited[MAXNODE];
int vsum;
void creatgraph(AdjList GL)
{int ijk;char y;
ArcNode *p;
cout<<“请输入村子数:“;
cin>>vsum;
for(i=1;i<=vsum;i++)
{
GL[i].firstarc=NULL;
}
cout<<“请输入村之间的所有路 一条路的两个端点之间用,分隔\n需满足任意两村之间有且仅有一条路:“< for(k=0;k {
cin>>i>>y>>j;
if(i&&j)
{
p=new ArcNode;
p->adjvex=j;p->next=GL[i].firstarc;GL[i].firstarc=p;
p=new ArcNode;
p->adjvex=i;p->next=GL[j].firstarc; GL[j].firstarc=p;
}
}
}
/*深度优先遍历*/
int i=0;
void dfs(AdjList Gint v)
{ArcNode *q;
if(!visited[v]) {i++; G[v].left=i;cout< visited[v]=1;
q=G[v].firstarc;
while(q!=NULL)
{if(!visited[q->adjvex]) dfs(Gq->adjvex);
q=q->next;
if(q==NULL){i++; G[v].right=i;cout< }
}
void DfsAdjlist(AdjList GLint v)
{int i;
for(i=1;i<=vsum;i++) visited[i]=0;
if(!visited[v]) dfs(GLv);
}
/*判断c是否为a和b的最近祖先*/
void Near(AdjList Gint aint bint c)
{int lr;ArcNode *q; int i=0;int m=0;
int H[32];
q=G[c].firstarc;
if(G[a].left>G[b].left){l=G[b].left;r=G[a].right;}
else{l=G[a].left;r=G[b].right;}
while (q!=NULL){
if(G[c].leftadjvex].left){//必需不是c的祖先
m++;H[m]=G[q->adjvex].left; //cout< m++;H[m]=G[q->adjvex].right; //cout< }
q=q->next;
}
//cout< int low=1;int high=m;//二分查找
int mid;
while(low+1 mid=(low+high)/2;
if(l>=H[mid]) low=mid;
else high=mid-1;
}
switch(low%2)
{case 0:cout<<“皇天不负有心人“< case 1:if(r<=H[low+1]) cout<<“白等“< else cout<<“皇天不负有心人“< default:cout<<“错误“< }
}
/*判断c是否在b到c上 函数*/
void Decide(AdjList Gint a int bint c){
int k=0;
if(G[c].leftG[b].right) k++;
if(G[c].leftG[a].right) k++;
switch(k){
case 0:cout<<“白等“< case 1:cout<<“皇天不负有心人“< case 2:Near(Gabc);break; //c为a和b祖先
default:cout<<“Error“< }
}
void main()
{AdjList GL;int m=0;
int a[20]b[20]c[20];int z;char t;
cout<<“ **************神秘国度的爱情故事*************** “< creatgraph(GL);
DfsAdjlist(GL1);
cout< cout<<“请输入测试组数:“;
cin>>z;
while(z>0){
z--;m++;
cout<<“请分别输入第“< cin>>a[m]>>b[m]>>c[
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 548926 2011-01-04 13:01 神秘国度的爱情故事\Debug\love.exe
文件 788700 2011-01-04 13:01 神秘国度的爱情故事\Debug\love.ilk
文件 259005 2011-01-04 13:11 神秘国度的爱情故事\Debug\love.obj
I.A.... 2001184 2011-01-02 10:09 神秘国度的爱情故事\Debug\love.pch
文件 1115136 2011-01-04 13:00 神秘国度的爱情故事\Debug\love.pdb
文件 123904 2011-01-04 13:11 神秘国度的爱情故事\Debug\vc60.idb
文件 110592 2011-01-04 13:00 神秘国度的爱情故事\Debug\vc60.pdb
文件 3378 2011-01-04 13:00 神秘国度的爱情故事\love.cpp
文件 3717 2010-12-30 15:02 神秘国度的爱情故事\love.dsp
文件 533 2010-12-30 16:51 神秘国度的爱情故事\love.dsw
文件 50176 2011-01-05 15:57 神秘国度的爱情故事\love.ncb
文件 48640 2011-01-05 15:57 神秘国度的爱情故事\love.opt
文件 688 2011-01-04 13:11 神秘国度的爱情故事\love.plg
文件 56 2011-01-04 15:03 神秘国度的爱情故事\readme.txt
目录 0 2011-01-04 13:00 神秘国度的爱情故事\Debug
目录 0 2011-01-05 15:57 神秘国度的爱情故事
----------- --------- ---------- ----- ----
5054635 16
- 上一篇:扫描线种子填充算法代码
- 下一篇:amcap2 9.01
相关资源
- 扫描线种子填充算法代码
- MASH 1-1-1 全数字算法实现
- 死锁检测算法
- 基于LM算法的非线性最小二乘法拟合
- KLT跟踪算法
- 经典进化算法SPEA2程序
- 遥感影像上面状道路的准自动提取算
- 遗传算法 NSGA II
- 神经网络动量_自适应学习率BP算法与
- 干扰信道的干扰对齐算法综述
- 迭代算法求信道容量
- 实值编码遗传算法源程序.txt
- 计算几何常用算法源码——多边形基
- 最快的TIN三角网生成算法
- 人工智能期末报告——浅谈蚁群算法
- 链路状态路由算法dijkstra算法
- 改进的快速Mersenne twister随机数算法
- 遗传算法用于机械臂运动规划
- 北邮算法课贪心算法作业代码
- 计算机图形学裁剪算法
- 粒子群算法和引力搜索算法
- 随机算法以及素数生成实验报告
- lz4压缩算法源码
- 神经网络新算法
- 算法心得-高效算法的奥秘原书第2版
- 银行家算法流程图.edd
- MIMO基础,包括包括MIMO的信号模型和各
- MOEA/D -AWA算法实验代码
- A5算法的FPGA实现
- fisher分类器算法及程序
评论
共有 条评论