训练日记-4

       今天由于家里有事的原因只刷了两道题,今天这两道题都是DFS深搜题。其中一道为将N个点分为两组,要求求这两组点之间距离的最大权值问题;另一道为一个9*9的二维数组补充数字的问题,要求每行、每列、每小3*3数组中的数字都由1-9组成。做DFS题还不是特别有思路,尤其是对于第一道题,刚虽然猜到了要用DFS,但是刚开始完全没有思路,想了半天终于有点思路后,然后就开始写,写完了大体框架了,在写主要函数体的时候,边想边写,然后发现自己刚才的思路并不对。在后来再怎么想有没有想出正确的思路来,然后只能求助于题解大大,才发现这个题的巧妙之处。在每个新数字从一个组转移到另一个组的时候,只需前一个状态的权值减去这个数与刚加入的这个组之间的距离,然后加上这个数与离开数组中数字之间的距离即可,这样一想,这道题就很容易解决了。

       通过做今天这两道DFS题,发现自己对DFS的理解还是欠佳,以后尽量加强这方面的训练。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值