关于#搜索#

关于搜索嘛,在集训第一天下午,林文成学长用他的PPT和他本人的理解,带我们揭开了“搜索”的面纱。说实话,在才听说搜索这个词时,我的理解嘛,就是探索——通过某种固定的方式去找,直到找到目标为止(就跟探索迷宫找出口一样)。而固定的方式用走迷宫来说的话,就是一开始你选择一个方向,一条路走到“黑”?,最后发现不行了就换。

在学长讲之后,我发现大致思路一样,但它的名词换了,叫做遍历。那么关于搜索中核心的“遍历”问题,我们该如何更好的处理呢?首先我认为我们应该在得到问题时首先要知道三个概念:1、起点;2、方向;3、目的地。就如同我们在现实生活中走大型迷宫一样,我们首先要确定入口在哪才开始去走,而确定了往哪走、怎么走、出口在哪才能有走出去的可能。只不过此时现实的我们变成了计算机中的遍历点(我们走的种种情况,都是计算机遍历的种种路径合适的选取,不合适抛弃重来)。

那么三大概念中第一和第三条,也就是起点、目的地,我们如何确定呢?对就是标记,我们可以在输入的同时给它们标记上特殊的符号,这是它们就有了特殊的身份,也就与其他点不在相同了,当如其他干扰项,比如墙、走过点也可以标记。而第二方向呢?我们可以以数字得形式把种种方向存下,最后在选取方向时,把不同的方向逐一遍历,选取最优解。

举个例子,下面红色的两个点便是被标记的起点(1)和目的地(15)。同时5、7、9、11由于是墙的原因,被另外标记。而我们要做的就是从起点(1)走到目的地(15)最短路径。
在这里插入图片描述
按照之前的方法我们规定走的方向和规则,比如:优先向右,向下次之,向左次之,向上次之。最后即使遍历了。
在这里插入图片描述
遍历完,我们发现有三种可以走向起点(但一种明显呆了,就不要它了),于是情况变成了两种,我们需要选择最优解了。情况①:1—2—6—10—14—15,共五步;
情况②:1—2—3—4—8—12—16—15,共七步。
显然我们选择情①。

大致思路就是这样,集训不枉留下,很高兴看见进步的大家和我!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值