20220205每日一题黄金矿工刷后感

博主分享了在解决LeetCode 1219问题时,从误认为需要使用并查集到发现其实是一个DFS问题的心路历程。虽然DFS解决方案在时间和空间复杂度上不尽人意,但最终认识到先解决问题再追求优雅解法的重要性。反思了自己的不自信和过度自信的心态,并决定改正。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原题链接:leetcode1219 黄金矿工

一个中等题而已,轻轻松松就写过去了,不过却有些其他的想记录下来。
一开始看这个题,我以为是可以并查集,找区块,然后统计每个区块的数值和选出最大的区块;解和样例仔细看看,发现只是一个DFS的问题,从任意一点搜索,找出最大路径和,很简单嘛。

但是我却陷入了一个误区,并不是说这个题写不出来,而是在写之前,先想到的是“啊?这玩意要是写DFS,我岂不是要每个端点都跑一遍DFS,这复杂度可不低啊,怕不是考的别的我没想出来?”(在我印象里,DFS这种东西不到最后不要逃出来,简直暴力,遍历所有结果,效率极其低下)想完之后,确实没想到什么其他的更快的解法,那姑且这么跑吧。
跑完之后时间击败50%,空间击败5%。倒也是意料之中,慢的意料之中。不过简单翻了翻题解,或许这东西是正解,只是我写的不太好,比较慢而已。


最后想说的,主要是在当时的那个误区。
对于一个问题而言,能解决是第一步,优雅的解决是第二步,如果都不能先解决问题,却想要直接优雅的解决,我想,我现在还没有那个实力;但却总是想着“不对啊,我的这个想法怎么这么‘幼稚’,这么慢的算法都能掏出来吗?不对,肯定是别的解法我没有想到。”
一种介于不自信(我提出的解决方案太蠢了)和极度自信(我可以想出更好的)的叠加态,却没有先动手执行,应当予以改正。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值