3 罪犯农场里的数组和索引
Frank看到一匹警队的马正拴在Crannock先生的房子外,不禁大声爆了一句粗口。既然警长已经亲自上门来雇他了,怎么还会碰到其他的警官?如果警长不信任自己的警官们,或者是他们遭到了怀疑,警长就会把他们委派到城市边远地带去调查一些小案子。如果他们只是单纯的能力低下,也会落得同样的下场。但是,从现在的情况看,有人已经在调查这个案子,而且Frank已经落后了。
Frank从虚掩着的前门溜了进去,到门厅去听那位来调查的女警官和Crannock先生的谈话。Crannock先生厌恶地瞥了Frank一眼,不过Frank的出现似乎早在他预料之中。但是,那位女警官看起来倒有些措手不及。
“你是谁?”她拿着羊皮纸和羽毛笔转向Frank问道。
Frank懒得理她。“Crannock先生,”他说,“再次见到你很高兴。”
“你又来烦我们了,是吗?”Crannock说,“这里可不欢迎你。”
“我才没指望你们欢迎我,”Frank答,“我是来找你妻子的,想问她几个小问题。”
那位女警官打量着他。“Frank?”她问,“Frank Runtime先生?前警探改行做私家侦探了?你在这做什么?谁的宠物龙走丢了吗?”她嘲笑道。
Frank还是没搭理她,说道:“Crannock先生,您的妻子究竟在哪?”
那个老男人举起了双手:“她啥都没干!她已经金盆洗手了,这次是真的。”这一幕演得算得上是业余演员了。
Frank笑了,他知道这话问得很令人不安,Crannock一定畏缩了。
“我知道,Crannock先生,我是来向她请教专业知识的。要不我请这位警官接着和你聊……”
“我是Notation警官。”那位年轻的女警官插嘴道,“我正在查案。”
她在撒谎,因为警官们永远都是和搭档一起调查案子的。更重要的是,Frank突然注意到她警徽上的名字是警长给他的执勤人员名单之中的一个,也就是说案发当晚,她也在警局值班。
“Notation警官,”Frank说,“谁说我是来查案的了?说不定我只是来找一条走丢的龙呢!”
她皱了皱眉头。
屋后传来了一阵骚动,有人在叫Crannock,不过被一声响亮的马叫声打断了。“我的妻子正和那些马待在一块,”Crannock先生不耐烦地说,“行了,她在2号谷仓,快去吧,别再赖在我的房子里了!”Crannock把他们往前门赶,然后从后门急匆匆地跑了。
“谢谢你!”Frank转身离开的时候喊道,“Crannock先生,见到您总是很愉快!”
Notation警官跟着Frank穿过了小花园,她很生气,每一步都重重地跺着地面,问道:“你知道你在往哪走吗?”
“2号谷仓啊。”Frank回答。
“我当然知道,”她咆哮道,“但2号谷仓在哪啊?”
Frank停下来转向她问道:“你是刚从警校毕业吗?Notation警官?”
“什么?”
“这样的搜索问题,只有菜鸟才会问。你没有上过警务程序课和数据结构课吗?或者是他们已经把这些课换成了小海龟画图这样不严谨规范的课程了?”
Notation愣了愣,说道:“我当然上过那些课啊,”她听起来有些底气不足,“但我的意思是……”
Frank打断了她:“那你就应该知道数组和索引。”
“是的,不过……”Notation说。
“在一个农场上找一个谷仓是一个再简单不过的搜索任务了,”Frank又打断了她,“我们可以用穷举的方法去搜索每一个建筑物。对农场上的每一个建筑都要检查一下是否为2号谷仓。在我上警校的那个年代,这是我们警用算法课第一节的内容。
“但是我们现在可以做得更好。Crannock一家把六个谷仓排在了一条整齐的线上,就像是一个巨型数组。Crannock先生非常好心地为我们写好了谷仓的编号,也就是数组的索引,我们现在只需要走到对应的谷仓就行了。”
“我不是想问这个!”Notation挥动着手臂大声吼道,“我知道怎么用数组里的索引,我也知道我们只用走到2号谷仓就好了,我毕业时在数据结构课和警用算法课上都拿到了第一,所以我不需要你在这给我说教如何正确使用数组。”
“刚刚是你自己问的啊。”Frank回答道。
“我问的是:你知不知道这个美丽可爱的谷仓数组在哪里?”
“哦,原来你问的是这个啊,”他开始继续向前走,说道,“虽然你说你是第一名,但看起来仍像一个菜鸟。”
“谷仓到底在哪?”Notation又一次吼着,仍然踩着重重的步伐赶上Frank。
Frank回头对她一笑:“这座小山上。”
他几年前得知,Crannock一家在生活中总是热爱运用数组的思想,近乎疯狂。他们会把所有的事物整理成井井有条的线性结构,然后将每个数组中的元素都标上清晰的索引。当Frank走过0号谷仓时,他看到了15个猪槽,每个猪槽可以放一份食物,农场里的喂猪人沿着猪槽摆放的直线,用勺子将猪食一份一份地送到这个数组的对应位置上。
Frank和Notation走到了2号谷仓,谷仓门口有个牌子标记着一个大大的“2”。相比之前遇到的人的态度,Crannock太太有些高冷的问候已经很令人欣慰了,至少她没有向他们砸任何东西……至少现在还没有。
“你们想干什么?”Crannock太太问。
“Crannock太太,”Notation担心Frank抢走了她的目击证人,抢先问道,“我能不能问你几个问题?”
Frank决定让Notation先问。Billy提供的线索只能指引他找到这个农场,但是Notation看起来收集了更多的信息。
Crannock太太冷笑一声,朝地上吐了口唾沫说道:“我啥都没干,我已经金盆洗手了。”
“我不是来逮捕你的,”Notation说,“我想问你一些关于驴车——Array Cart(数组车)的问题。”
Frank心里闪过一丝疑惑。Notation难道是为了调查另一个案子才来这里的吗?他有些怀疑。直觉告诉他这个女人是为了那些丢失的文件而来的,而且他很相信自己的直觉。
“Array Cart啊,”Crannock太太说道,虽然她表面上是毫不遮掩的傲慢,但是语气里还是夹杂着疑虑,“这是我的发明,基于数组的原理而创造的。它有很多分开的棚,用来存放我的动物们。每一个棚只能存放一只动物。我可以直接把某一只动物放出来或者关进去,因为每个棚都有一扇门。这样可以直接地访问每一个存储位置,既方便又节约时间。”
“这方法确实很巧妙,”Notation承认道,“你把数组和索引的概念运用在了牲畜的转移上。”