搜索和遍历在图中有何区别和联系?

}

}

首先,最明显的不同就是“方向”,在搜索时,是从4或8…个固定(上下左右)的方向进行枚举,

而在遍历时,只是通过存储的图中的边进行依次枚举。

这让我不禁思考一下,为什么不同了,又或者能互换这样的枚举方式吗?

问题的讨论

=====

对于这样的一个“学术执着”精神,必须给它想清楚了心里才觉得踏实,于是我沉思许久。

一开始,我感觉到,是因为他们需要的枚举方向不同,所以遍历是从一个点依次判断。

但是这样都是枚举方向,为什么一个这样,另一个那样?

搜索的时候,如果也用G[u][v]来进行DFS、BFS可以吗?

遍历的时候,如果也用NEXT[][]数组来保存方向可以吗?

想了半天好像感觉不可以。为什么不可以呢?

想通了发现,按道理是可以的,因为同样是图,所以本质是不变的,况且他们的深度优先和广度优先的思想是不变的。

但是!在图的搜索当中,我们一般是给的具体一个“图”,而图的遍历当中,我们给的是点与点之间的连接关系,所以就造成了差异!

这一点从具体的算法题也可以非常之明显地看出来!

例如:


搜索给出的数据是

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值