思路呀思路

来源:互联网 发布:python 中文注释乱码 编辑:程序博客网 时间:2024/04/19 23:15

原文来自:http://blog.csdn.net/pouy94/archive/2011/04/04/6301471.aspx

无可置否的,思路这个东西在信息学竞赛中往往是最重要的,有了思路算法就基本有了,算法有了就只剩实现的问题了

而且,不仅仅是信息学竞赛,很多东西都赖 思路

所以说 思路 的重要性不言而喻

冬令营上wy神牛喜欢说idea,但我还是比较习惯管这个叫 思路

说到思路,难免联想到另一个词,思维定势

怎么说呢,思维定势这个东西在大部分时候也并不是像考场作文里写的那样坏的

我们生活的99%都由思维定势直接引导着前进

比方说如果你现在想打字了,你会习惯性地用手来敲键盘而不会想到用脚或是舌头,你会思维定势地敲键盘而不是捅显示屏或是机箱什么的

因此,我们想问题往时往会先走自己熟悉的路子,把问题往自己的定势思维上拉一拉,靠一靠,甚至扭一扭

数学家管这个叫恒等变形,OIer则喜欢称之为模型转化

那么,思路和思维定势有着什么样的关系吗?

好的思路可以被培养成思维定势

关键字:好的思路 -> 思维定势

鲁迅先生说过一句这样的话,创新这个东西嘛,我们是要非常重视并敢于实践的。第一个吃螃蟹的人肯定是勇者,他的探索精神为后人开辟了一条新路,发现了好吃的螃蟹。并且,我们不能怕走弯路,螃蟹有人吃,蜘蛛肯定也有人吃,不过不好吃,所以后人不吃了,但这个吃了蜘蛛的人起码也为后人警了个醒,蜘蛛不能吃。这句话的原意是要说明创新和探索精神的重要性,但我们其实还能提炼出另一个观点:好的思路会为人们沿袭下去,而坏的则能充当反面教材

将好的思路好好地总结下来,并有意识地在自己以后碰到的题中往这方面想一想,这是大有裨益的

比方说,某道题要求 使XXX最大的最小,经验告诉我们这个题应该要二分答案,然后我们心里就先二分个答案再说,结果最后成功地做出了这个题。试想如果我们不二分答案,要搞出这个题还真困难

一个新发现的思路,可能下一次碰到还不会往者方面想,再下一次还可能忘了这回事,但再下一次我们就有经验了,有意识地往那个思路上靠,结果成功拿下这道题,然后心里感到很高兴,这个思路还蛮不错的啊!

于是,这个好的思路就渐渐升级为了思维定势

比方说,你现在给一道题,要我求 使XXX最大的最小,我会想都不想地直接二分答案,坚定不移地一条路走到黑,撞了南墙可能都不知道是二分答案这一步有问题

没错,形成一些思维定势无疑将使我们做出大部分题都像顺着思路走的必然结果,不论是速度还是正确性都令人激赏

但是,问题往往就会出在我们最容易忽视的地方

我想说的第二层关系就出来了

思维定势有时又会阻碍我们发现更好更新更妙的思路,甚至将我们导入死胡同

还是 使XXX最大的最小 这个问题,你如果知道了我有 二分答案 这个思维定势,你故意出道题,然后二分答案是绝对做不出的,那我就完蛋了,因为我的思维定势正中了你的下怀

还有,有下面这样一道题,

给你一张正方形纸,然后折n次,再给你m个点,要你求出这m个点所在的位置有几层纸,n <= 8,m <= 50

常规思路会引导我们从正面入手,模拟这个折纸的过程,然后用一些很麻烦的方法维护每一层纸的形状,然后。。

没有然后了,这样的思路,或者说直接从正面,又或者说从过程入手,在这道题上应该是行不通的

可以这样说,就是 拿到一道题就从过程入手考虑 这个思维定势把我们诱入了死胡同

怎么办呢?

既然已经陷入了死胡同,那么,我们就不要拘泥于仅仅是“大部分时候有用”的思维定势了,跳出来,换一个角度,换一个思路

这道题如果我们直接从结果入手,反过来考虑,眼界就大不一样了

我们可以这样想,假设我们已经拿到这张折好的纸了,然后我们在给定的位置上钻一个洞,我们人会怎样数这个洞穿了几层?

我们会反过来一层层将这张纸打开是吧!

那么我们只要模拟这个过程就可以很方便地统计每个点所在位置穿了几层纸了

大概就是反着折纸的过程将当前的点翻到折线的对面,最后统计在原来正方形纸内部的点有多少个即可

换一个角度,换一个思路,跳出思维定势,问题便迎刃而解

关键字:跳出思维定势 -> 更好的思路

读到这里,也许你会产生疑问了,既要形成思维定势,又要打破思维定势,既要让好的思路成为思维定势,又不能让思维定势阻碍更好的思路,该怎么办呀?

思维定势和好的思路有如一对在矛盾中结伴前行的战友,我们既要善于总结,还得敢于改变,让好的思维定势助我们做题,又能在关键时候跳出思维定势做出题目

扯了半天,还是不可避免地扯回了一个古老的话题,对立统一的辩证唯物观

或许,只有 改变 才是 亘古不变的 真理