脑子一较真,就容易打结。上周末收拾屋子,胳膊肘不小心碰了个快递箱,“哗啦”一声,底下滚出个硬壳本儿。《数据结构与算法设计:Pascal语言》。封皮黄得发脆,跟旧报纸没两样。腰封上印着两行字,还挺唬人:“专为中小学生编写”“竞赛辅导”。现在谁还翻这老古董?我心里嘀咕。满纸的伪代码吧?定理跟绕口令似的?随手掀开两页。手指头,嘿,居然自己就停住了。

第一章开门见山,就甩出五个字:“后进先出”。我盯着这行字,愣了半天。咱老百姓懂什么数据结构?可闭上眼一算,生活里不全是栈么?微信对话框里,七八条“收到”攒着没回。下班挤进电梯,早高峰榨干的那点疲惫,“咚”一下砸脚后跟,全塞进底下了。周末瘫着,再慢慢往外掏。书里提了一嘴Pascal的“强类型检查”。听着死板,对吧?其实就跟个较真的老会计似的。往栈里塞东西前,非逼你掂量掂量:这玩意儿,规格对吗?前阵子咬牙断舍离,翻出个90年代的铁皮饼干盒。里头塞着二十多本中学日记。那时候多傻啊。开心、憋屈、暗恋的名字,全糊里糊涂往里填。越压,越喘不上气。现在回头看,有些情绪,真没必要一股脑儿堆成栈。得挑拣着放。话是这么说,事后诸葛亮谁都会当。可理儿,大概就是这么个理儿。

往后翻,讲“队列”和“链表”。作者非拿食堂打饭、公司传文件打比方。我直犯嘀咕:好好的小孩,干嘛塞这些硬核玩意儿?翻到“递归”那节,嘿,真被绊住了。书上写得干巴:“函数自己调自己,没个出口不罢休。”合上书。脑子里直接跳出我侄子搭积木的画面。六岁小子,趴地毯上垒乐高。垒到快一米高,“哗啦”塌了。不哭不闹。蹲地上,拍拍灰,重来。一遍。两遍。折腾到第十回。他懂什么叫“回溯算法”?不知道“状态重置”是啥。但手底下门儿清:底座没散,接着摞。大人总迷信得给孩子灌逻辑公式。我觉得吧,日子本身就是套最原始的算法。小孩摔跟头,走弯路,真就是在自己跑代码。不过,把生活全套进算法?好像有点太浪漫了。人又不是机器。偶尔,总得允许自己死机重启吧。

排版,确实有点东西。不整一上来就砸公式的唬人套路。先教你怎么“装”,再教你怎么“算”。这路子,熟啊。前年硬着头皮啃新技能,眼高手低得厉害。恨不得直接翻到目录最后看成品。结果呢?基础没打牢,跑起来全是bug。跟空中楼阁似的。书里反反复复念叨“规范”和“严谨”。头回看,嫌是捆手脚的紧箍咒。读顺了才咂摸出味儿来:那是给快炸毛的脑子搭的脚手架。规矩立在那儿,思绪才不会像没头苍蝇乱撞。不过,规矩这玩意儿,用过了头,也容易把人框死。看场合用吧。未必哪儿都灵。

我确实吃这套笨功夫。现实里,哪有那种一脚跨到终点的捷径?总盼着能有个完美的 if-else,选对路,一键通关。可过日子,多半是 while 循环。连个明确的 break 标志都找不到。只能一天天,把眼前的烂摊子往下顺。有时候琢磨着,干脆让脑子里的栈溢出一回?哪怕乱成一锅粥,反倒比死磕什么“最优解”痛快。前阵子,我也拿尺子量过日子。表格拉得满满当当,优先级标得清清楚楚。结果呢?把自己硬生生逼进死胡同。周末喘口气的功夫,都没了。后来才悟透:留点没填上的空白。让事儿自己沉淀沉淀。比那种严丝合缝的日程表耐造多了。这话,只对容易过度规划的人管用。天生散漫的,看了估计还得继续摆烂。

书里最后还提了一嘴。Pascal当年搞出这套严谨语法,图的就是个“好读好懂”。我琢磨着,这算不算给咱们大人提个醒?现在整天在信息流里瞎扑腾。一天刷几十个小时碎片推送,早忘了给脑子设护栏。把一团乱麻,拆成最小零件。挨个儿拧紧了,装回去。步子,反而迈得稳当。这事儿,未必适合所有人。但对我们这种脑子经常过载的人,确实是个笨招。管用。

外头的雨,不知啥时候停了。窗玻璃上,留着几道干涸的水印。我把那本老书,塞回书架。旁边挨挤着几本,只看前五十页的小说,还有落灰的家常菜菜谱。明儿一早,闹钟还得响。地铁里的汗味,回不完的邮件,晚饭吃啥的世纪难题,正排着队等我挨个儿对付呢。别急着找出口。一步一步走,就行。