社区
数据结构与算法
帖子详情
[急]求两个图算法的伪代码,各位大虾帮个忙!
Aaron_Jerry
2009-06-18 11:03:08
算法1:
就是在一个有向图中,假设每个节点都会满足一些公式(这里的公式就是表示性质),我要找,在这个有向图中,从指定的那个入口节点出发,是否存在一条路径(路径要求找到出度为0的节点结束),在这个路径中的每个节点都满足公式A。
算法2:
在一个有向图中,从入口节点开始找,是否存在一条路径,在这个路径上某个节点满足公式B,且这个节点之前的所有节点都满足公式A。
急用,伪代码越详细、越完整越好。先谢谢了
...全文
614
8
打赏
收藏
[急]求两个图算法的伪代码,各位大虾帮个忙!
算法1: 就是在一个有向图中,假设每个节点都会满足一些公式(这里的公式就是表示性质),我要找,在这个有向图中,从指定的那个入口节点出发,是否存在一条路径(路径要求找到出度为0的节点结束),在这个路径中的每个节点都满足公式A。 算法2: 在一个有向图中,从入口节点开始找,是否存在一条路径,在这个路径上某个节点满足公式B,且这个节点之前的所有节点都满足公式A。 急用,伪代码越详细、越完整越好。先谢谢了
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
丈八涯
2009-06-25
打赏
举报
回复
感觉问题描述的还是不够清晰,楼主所说的满足公式是否于走行的路径有关系.
如果有关系,那么就类似VSPTW问题.如果没有关系,那么就更好解决了,你把路径的据点满足属性标记出来,修改一下路径值就搞定.
bigbug9002
2009-06-21
打赏
举报
回复
准备:
顶点集:vexs[]
邻接矩阵:adjMatrix[][]
标志数组:isVisited[]
栈: trace;
DFS(vex){
do{
if(!isVisited[vex]){
trace.push(vex);
isVisited[vex]=true;
}
for(int i=0;i<vexs.length;i++)
if(adjMatrix[vex][i]==1&&funcA(i)&&!isVisited[i]) break; //找一个与vex邻接的,满足funcA的,没有被访问过的顶点。
if(i<vexs.length) //说明找到了满足条件的顶点 i
vex=i; //下一步的遍历从 i开始。
else{
//trace中存放的就是一条路径。这里可以对这条路径做相应的处理。
trace.pop(); //出栈,从vex已经没有路可走了。//这里也可以:如果栈顶不满足条件就一直做pop操作。
if(!trace.isEmpty()) vex=trace.top(); //准备从栈顶开始遍历
}
while(!trace.isEmpty());
}
allen303allen
2009-06-20
打赏
举报
回复
这是算法1的一个伪代码:
定义一个队列q,赋处置为入口节点
初始化所有节点为未访问状态
标记入口节点为已访问
while (队列非空)
{
A = q.front(); //取出队首节点
q.pop(); //弹出队首节点
for (所有的节点)//自己也可以先过滤出满足公式A的节点或使用邻接表表示图矩阵来提高效率
{
if (该节点未访问 && A存在指向该节点的路径 && 该节点满足公式A)
{
if (该节点的出度为0)
{
输出路径,结束
}
else
{
标记该节点为已访问
将该节点加入队列
标记该节点的前继节点为A //用于最后输出路径
}
}
}
}
算法2跟1是类似的,将满足公式B的作为终点节点,看懂了上面的,2就不难写出来了。
Aaron_Jerry
2009-06-19
打赏
举报
回复
麻烦大侠们给出伪代码吧,谢谢
neohope
2009-06-19
打赏
举报
回复
两个问题都可以用回朔
liliangbao
2009-06-19
打赏
举报
回复
帮顶~
ameyume
2009-06-18
打赏
举报
回复
帮顶
光宇广贞
2009-06-18
打赏
举报
回复
可以这样,
1、每个结点都有一个域去保存这个结点的性质,那么将从指定结点进入时,就使用DFS,去探索路径中结点的性质是否都满足A,这就等于探迷宫,满足A者为通,不满足者为堵,这就完成了。
2、就是1问的变种,一样DFS就可以。
《数据结构及
算法
经典》源代码.
目录:
单元加
字符
底层编程
效验
算法
数学问题
数据结构
数组
文件程序
求
进制
汉诺塔
硬币情况
逆阵
问题
算法
小写数字转为大写数字
其它
共168个源代码
sift
算法
源码
这是SIFT
算法
详解博文中附录2 http://blog.csdn.net/zddmail/article/details/7521424 源码包括高斯模糊实现,sift的实现细节。
java
算法
大全(含源码包)
java
算法
大全,有近100多种常见
算法
的源代码,是学习JAVA
算法
的难得资料。
数据结构+
算法
综合资料库
数据结构与
算法
综合资料库(CHM) 程序员必备的基础资料,对数据结构与
算法
很详细的讲解,里面还有许多示例,大家可以参考,学习编程语言都要用到的基础资料。初级走向高级必修的内功心法!
des加密
算法
(js+java)加密与解密结果相同
des加密
算法
(js+java)加密与解密结果相同 包含三个文件 : des.js des.html ,用于实现前端脚本的加密与解密 des.java 用于后台的加密解密操作; 项目中正好用到,已经过验证,
两个
加密解密结果相同,分享给大家!
数据结构与算法
33,028
社区成员
35,337
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章