资源简介
神秘国度的爱情故事 算法与数据结构课程设计

代码片段和文件信息
#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
相关资源
- SVR算法程序可运行
- 计算机图形学 边填充算法实现代码
- 福建师范大学历年算法考卷
- 栈的实现及应用,六种基本算法
- Bresenham算法绘制线段并利用“橡皮筋
- 介绍几种压缩算法及《笨笨数据压缩
- 改进的BP神经网络算法
- A星算法_原理讲解_例子
- 云模型的相关算法cloud
- 旋转矩阵求欧拉角的简单算法
- 栅栏填充算法源码(VC)
- RSA算法源码
- 关联分析Apriori算法实现
- [免费]relax算法成像
- 操作系统 LRU算法 实验报告 及 程序代
- 分治法快速排序算法QuickSort C
- 现代谱估计算法 music ESPRIT 谐波分解
- MUSIC算法c 实现
- 007出纳管理系统 v7[1].5.94 算法注册机
- 克鲁斯卡尔算法C和C 实现代码
- capon波束形成算法-VC实现
- QGA 量子遗传算法
- 利用OpenGL写毛笔字算法
- 带头结点的单链表的c算法实现
- 自适应隐写算法wow
- 协同过滤算法源码
- RSA AES DES ECC加密算法源码
- 密码学课程设计:DES加密解密算法的
- 北航人工智能原理课大作业源代码,
- A*算法的2D演示(带源码)
评论
共有 条评论