【百度实习日记】Day 20: 不要钻牛角尖

钻钻钻

写代码的时候一定要注意解决问题的思路,如果没有想到很好的解决方式就贸然去写,很可能就不知道在写什么了。思想跑偏的时候怎么办呢?我也不知道,我今天就跑偏了,额。

想一下这样的需求:PHP。有一个多维数组,类似这样的:

还有一个一维数组,类似这样的

这两个数组有什么相关之处呢?

观察一下,第一个多维数组的每一级正好对应着第二个一维数组的每一个元素值。要做的事情是,判断第一个多维数组的每一层结构是否和第二个一维数组的每一个元素值相对应,并且判断多维数组的最深层次的那个元素的key(这里是那个a111)它的值(这是是22222)是否和一维数组的最后一个元素的值相等(这里即使那个22222)。想一下怎么实现。

我当时不知道怎么想的,一直试图将一维数组展开然后构造一个多维数组出来,然后去与最初给的数组进行比较。然而很搞笑,那样纠结了很久很久。后来发现可以用很简单的方式实现要的功能:

一次循环,注意停止条件和界限,OK了。

写代码的时候脑子一定要清醒。

刘凯宁
20150624

Share