换个维度思考问题

2018-06-18  本文已影响69人  马天亮

”山重水复疑无路,柳暗花明又一村”,这句中国古诗里面所蕴含的道理是很多问题从一个维度来看,似乎已经到了“尽头”,无法得到解决。但是如果换一个维度来看,其实会发现还有非常广阔的空间,哪里是什么“尽头”,说不定是一片新风景、新领域的起点。

今天在地铁上我看到了吴军在得到专栏里面分享的一个问题非常有趣,这道曾经的谷歌公司面试题看上去不难,实际上如果我们不打破传统的思维局限和思维定势,那么哪怕想破脑壳,用最复杂的算法也无法解决问题。但是,一旦你换个角度去考虑,打破固有的思维定势,解决这个问题几乎不用算法知识。所以,有时候当思考一个问题到瓶颈上的时候,一定要考虑是不是自己思考问题的维度被局限住了。跳出原先的维度,可能会让你“眼前一亮”!

这道题是这样的,给你一个英语的语句,比如"London bridge is falling down",请你用恰当的方法,把它倒装过来,变成"down falling is bridge London",但是有要求,不能使用额外的存储空间。我们大脑第一眼看到这句话的时候,会非常自然的将句子中的每一个单词看成是组成这整个句子的一个个单元,所以常规想法是先从句子中以“空格”为分界,分割出每一个单词,然后把这些单词依次放入到一个堆栈中,根据栈“先入后出”的特性,依次出栈,就能够得到倒装的句子。但是,这样的常规做法是不满足题目要求的,因为创建堆栈消耗了额外的存储空间。题目的要求是做一个“原地”倒换,所以这样是不符合要求的。后面吴军老师谈到,如果我们紧盯着每一个单词为最小单元,那么这个题很难解答的,用很复杂的算法也难以有好的效果。

那么,可以换一个角度去思考,首先不去关注句子中的每一个英文单词,而是关注整个句子本身,把它当成一个整体进行处理。首先呢,把句子中第一个字符和最后一个字符交换,第二个和倒数第二个字符进行交换,以此类推,这样整个句子就会变成如下这个样子"nwod gnillaf si egdirb nodnoL"。第二步,是用空格分隔的每一个字符串以字母为单位,头尾对调。比如,第一个字符串是"nwod",进行头尾对调之后,就变成了"down",,怎么样,奇迹出现了,整个句子就这样倒装成功了。

假设原来的句子是这样构成的"a[0]a[1]a[2]a[3]_b[0]b[1]_c[0]c[1]c[2]",进行完第一步操作之后,整个字符串就变成"c[2]c[1]c[0]_b[1]b[0]_a[3]a[2]a[1]a[0]";然后,进行第二步操作,整个字符串就能够变成"c[0]c[1]c[2]_b[0]b[1]_a[0]a[1]a[2]a[3]",完成了整个句子的倒装。怎么样,这个解法是不是非常巧妙,没有用到任何复杂的算法知识就解决了问题。

据吴军老师说,能参加Google公司面试的人里面都是百里挑一,但参加面试的人里面有一半做不出来这道题。面试者不是编程能力不强,而是拘泥于平时的思维定势中,特别是不敢把整个句子首先变成无意义的字符串,才能得到后面有意义的字符串。第一步中将有意义的单词变成无意义的字符串,表面是是把问题搞乱了,其实完成了两件很关键的事情,一个是把文字信息互换了位置,另一个功能是记录了每一个单词的长度并保留了下来。这种先把看得懂的信息,变成看不懂的信息,但不损失任何信息细节的做法,其实是计算机科学中图像、语音压缩、处理的基础。大名鼎鼎的”傅里叶变换“就是先把空间时域上的信号转换成频域信号,再对频域信号进行处理,处理完之后再反变换回时域空间信号。这样做的好处就在于,如果我们要直接对时域信号进行处理,那么会非常复杂,要考虑很多细节。而设计一个有截止频率的多阶滤波器是非常容易且非常通用的,和图像语音细节无关。只要将原来的信号转变成频域信号,再对它进行滤波,再反变换复原。这就是典型的换个维度思考问题,一下子就能获得非常简单的解法。

其实不仅仅是科学研究上有时转换思考角度能获得不错的效果,投资理财有时候仔细想想也是如此。在这周金融学课的学习上,老师重点讲的是对投资品的估值,在股市中有市盈率的概念。市盈率就是股票的市值和每股收益的比值。按照一般思维,市盈率比较低的股票,说明价值被低估,应该是机会,值得投资。但是股票市场上,往往是那些市盈率比较高的股票受到投资者的青睐。为什么呢,其实换个角度想想,是有道理的。因为投资投的是未来、长期。如果一家公司发展势头良好,蒸蒸日上,那么今后的盈利能力就要远超过今天的盈利能力,那么按照今天的市值去看,其实市盈率就不高了。之所以市盈率高,反映的恰恰是资本市场对其未来盈利能力的看好。而市盈率低,往往是未来发展有限的说明。所以,不一定所有市盈率高的股票就是泡沫。

同样,房价高、租售比低的城市是不是就一定会有泡沫呢,其实也不一定。虽然说在中国,租房和买房本质上是两种不同的商品,但是其实还是可以和股票中的“市盈率”进行一定的类比。当前来看,越是大城市,似乎租售比越低,租房越“显得划算”。但是,应该考虑到的一点是,在人口流入,产业发达的大城市,每年的租金上涨也是快速的,房价高正好是反映了未来租金会上涨很快的预期。如果一个城市、一个地段房子很容易就租出去,租金上涨很快,那么房价高就不是泡沫,反而是合理的了,恰好是值得投资。过去“看空”中国房价的人,可能也是觉得从一个静态时间点看,租售比很低,看上去有泡沫。但如果换一个维度看,从动态来看的话,其实购房相当于一次性买断未来几十年的大概率不断上涨的租金,其实是划算的投资。

在一个维度里思考问题,容易陷入到思维定势中,换个维度思考问题,有时别有一番天地。

上一篇下一篇

猜你喜欢

热点阅读