有哪些算法可以应用于图像设计题目的算法设计?
- 内容介绍
- 文章标签
- 相关推荐
本文共计263个文字,预计阅读时间需要2分钟。
1. 设计一个算法,求无向连通图中距离顶点V最远的顶点。假设G采用邻接表存储结构,利用广度优先搜索遍历算法,从V出发进行广度优先搜索,最后得到距离V最远的顶点。遍历过程中,利用队列存储遍历的顶点,记录每个顶点到V的距离。
1.设计一个算法,求无向连通图中距离顶点V最远的顶点。
假设图G采用邻接表的存储结构,利用广度优先搜索遍历算法,从V出发进行广度优先搜索,最后一层的顶点距离V最远。遍历时利用队列暂存各个顶点,队列中的最后一个顶点一定在最后一层,因此只要将该顶点作为结果即可。
int maxdis(ALGraph *G,int v)
{ArcNode *p;
int Q[MAXSIZE];
int front=rear=0;
for(i=0;i<G->vexnum;i++)
visited[i]=FALSE;
rear++;
Q[rear]=v;
visited[v]=TRUE;
while(rear!=front)
{
front=(front+1)%MAXSIZE;
k=Q[front];
p=G->adjvex[k].firstarc;
while(p!=NULL)
{
j=p->adjvex;
if(visited[j]==FALSE]
{
visited[j]=TRUE;
rear=(rear+1)%MAXSIZE;
Q[rear]=j;
}
p=p->nextarc;
}
}
return k;
}
本文共计263个文字,预计阅读时间需要2分钟。
1. 设计一个算法,求无向连通图中距离顶点V最远的顶点。假设G采用邻接表存储结构,利用广度优先搜索遍历算法,从V出发进行广度优先搜索,最后得到距离V最远的顶点。遍历过程中,利用队列存储遍历的顶点,记录每个顶点到V的距离。
1.设计一个算法,求无向连通图中距离顶点V最远的顶点。
假设图G采用邻接表的存储结构,利用广度优先搜索遍历算法,从V出发进行广度优先搜索,最后一层的顶点距离V最远。遍历时利用队列暂存各个顶点,队列中的最后一个顶点一定在最后一层,因此只要将该顶点作为结果即可。
int maxdis(ALGraph *G,int v)
{ArcNode *p;
int Q[MAXSIZE];
int front=rear=0;
for(i=0;i<G->vexnum;i++)
visited[i]=FALSE;
rear++;
Q[rear]=v;
visited[v]=TRUE;
while(rear!=front)
{
front=(front+1)%MAXSIZE;
k=Q[front];
p=G->adjvex[k].firstarc;
while(p!=NULL)
{
j=p->adjvex;
if(visited[j]==FALSE]
{
visited[j]=TRUE;
rear=(rear+1)%MAXSIZE;
Q[rear]=j;
}
p=p->nextarc;
}
}
return k;
}

