图书馆的邀请与黑色的警告
图书馆的邀请与黑色的警告 (第1/2页)傍晚六点五十分,林澈提前十分钟到了图书馆三楼。
这个时间的自习室人还不多,日光灯刚刚亮起,在深色木桌上投下清冷的光。空气里有旧书、灰尘和隐约咖啡的味道。他选了靠窗的位置——那是前世他习惯坐的地方,抬头就能看到窗外暮色渐沉的天际线。
他从书包里拿出《高等数学》和草稿本,想了想,又拿出《C语言程序设计》。程序员的习惯让他在规划时间时总是下意识地留出冗余:如果给苏雨薇讲题只用半小时,剩下的时间可以预习下周的编程课。
然而翻开《C语言》第一章,他就愣住了。
那些曾经让他熬夜苦读的语法——指针、内存管理、数据结构——现在读起来就像小学算术一样简单。不是记忆的简单,而是理解的透彻。他能看到代码背后的逻辑骨架,能看到算法在计算机底层流动的轨迹。
这种感觉很奇异。就像突然听懂了所有乐器的交响,看到了数学公式在现实世界投射的阴影。
他翻到书后的习题,随手在草稿纸上写下一段代码:
```c
#include
#include
//实现一个简易的哈希表
typedefstructNode{
intkey;
intvalue;
structNode*next;
}Node;
typedefstructHashTable{
intsize;
Node**table;
}HashTable;
HashTable*createHashTable(intsize){
HashTable*ht=(HashTable*)malloc(sizeof(HashTable));
ht->size=size;
ht->table=(Node**)malloc(sizeof(Node*)*size);
for(inti=0;itable[i]=NULL;
}
returnht;
}
inthash(intkey,intsize){
returnkey%size;
}
voidinsert(HashTable*ht,intkey,intvalue){
intindex=hash(key,ht->size);
Node*newNode=(Node*)malloc(sizeof(Node));
newNode->key=key;
newNode->value=value;
newNode->next=ht->table[index];
ht->table[index]=newNode;
}
intfind(HashTable*ht,intkey){
intindex=hash(key,ht->size);
Node*current=ht->table[index];
while(current!=NULL){
if(current->key==key){
returncurrent->value;
}
current=current->next;
}
return-1;//未找到
}
voidfreeHashTable(HashTable*ht){
for(inti=0;isize;i++){
Node*current=ht->table[i];
while(current!=NULL){
Node*temp=current;
current=current->next;
free(temp);
}
}
free(ht->table);
free(ht);
}
```
写完最后一个分号,林澈看着满页的代码,手微微发抖。
这已经不是“大一学生”的水平了。这是工作三年、写过几十万行代码、重构过复杂系统的工程师才有的肌肉记忆。
笔迹流畅,变量命名规范,内存管理严谨,连注释都是他习惯的格式——用英文,简洁,关键处解释算法思路而不是重复代码。
他撕下这一页,揉成团,塞进书包深处。太危险了。如果被别人看到,解释不清。
“林澈?”
苏雨薇的声音从身后传来。他转头,看到她站在两排书架之间,背着浅蓝色的双肩包,头发扎成马尾,有几缕碎发落在颈边。
“你来得真早。”她走过来,在对面坐下。
“习惯了。”林澈合上《C语言》,“吃过饭了吗?”
“吃了食堂的盖浇饭。”她从包里拿出笔记本和试卷,“我把今天那道题的步骤抄下来了,但还是不懂怎么想到要构造那个函数。”
林澈接过她的笔记本。字迹清秀工整,每个步骤都写得清清楚楚,但在关键步骤旁边打了个问号。
“这里,”他用笔尖指着她笔记上的第三步,“你卡在怎么消去$f(1)$,对吧?”
苏雨薇点头,身体微微前倾。
林澈开始讲解。他刻意放慢语速,用她能理解的方式解释:为什么要构造辅助函数,罗尔定理的使用条件,如何巧妙地把未知的$f(1)$设计成可以消去的参数。
讲着讲着,他忽然意识到,自己不只是在前世记忆的层面理解这道题,而是在一个更高的维度上看到了数学的结构美。他能同时想到三种解法,能预见苏雨薇可能困惑的每一个点,能在她皱眉的瞬间调整讲解的角度。
这感觉……像开了上帝视角。
“我懂了!”苏雨薇忽然说,眼睛亮起来,“你是说,我们构造的$\varphi(x)$实际上是把原问题转化成了一个更简单的问题——找罗尔定理的适用条件!”
“对。”林澈有些惊讶于她的领悟速度。前世,苏雨薇的数学并不算顶尖,但显然她很聪明,只是缺乏引导。
“你真厉害。”她轻声说,脸微微红了,“赵老师说得没错。”
林澈心头一紧:“赵老师说什么了?”
“下午你走后,张涛他们议论,说你可能是作弊了。”苏雨薇的声音低下来,“但赵老师说,这种题没有标准答案可抄,能解出来就是真本事。”
林澈沉默。赵建国这是在保护他。
“还有,”苏雨薇犹豫了一下,“赵老师让我转告你,数学建模小组的选拔改时间了,改到这周三晚上七点,地点在理学院301。”
“周三?”林澈算了下时间,就是后天。
“嗯。他说让你务必参加,但……”她顿了顿,“但别表现得太突出。”
这句话意味深长。赵建国在提醒他藏拙。
“我知道了,谢谢。”
窗外天色完全暗了下来,图书馆的灯光在玻璃上反射出模糊的倒影。自习室的人渐渐多了起来,有情侣低声说话,有考研党在翻厚厚的参考书,键盘敲击声和翻书声混合成一种令人安心的白噪音。
“你以后想做什么?”苏雨薇忽然问。
这个问题让林澈愣住了。前世,他的答案很俗套:进大厂,拿高薪,在大城市买房。但现在的他,知道七年后的自己会猝死在工位上。
“不知道。”他诚实地说,“可能……做点有意义的事。”
“有意义的事?”
“比如,用技术解决实际问题。”林澈说,脑中闪过比特币、人工智能、还有那些他曾经想做但没机会做的项目,“而不是只写业务代码。”
苏雨薇看着他,眼神里有某种欣赏:“你和其他人不一样。”
“哪里不一样?”
“他们想的是找工作、考研、出国。”她说,“但你想的是……改变什么。”
林澈苦笑。如果她知道自己是死过一次的人,大概就不会这么想了。
“你呢?”他反问。
“我想做教育。”苏雨薇说,声音很轻但坚定,“我高中时数学很差,差点没考上大学。后来遇到一个好老师,他告诉我,数学不是天才的专利,只是需要正确的方法。所以我想,以后我也要当老师,帮助那些觉得自己学不好数学的学生。”
林澈看着她。在柔和的灯光下,她的侧脸轮廓清晰,眼神清澈。前世,他只知道她是班花,是富家女,是很多人暗恋的对象。但现在,他看到了更深层的东西——理想,善意,还有坚韧。
“你会是个好老师。”他说。
苏雨薇笑了,那笑容很温暖。
接下来的半小时,他们又讨论了几道题。林澈发现,苏雨薇的思维其实很敏捷,只是缺乏自信。一旦理解了基本原理,她就能举一反三。
八点整,苏雨薇的手机震动。她看了一眼,脸色微变。
“我得走了。”她匆忙收拾书包,“家里有点事。”
“我送你到校门口?”
“不用,我自己可以。”她站起来,犹豫了一下,“林澈,谢谢你今晚给我讲题。”
“应该的。”
她离开后,林澈重新翻开《C语言》。但这一次,他看不进去了。脑中反复回响赵建国的话:别表现得太突出。
为什么?
是因为怀疑他作弊?还是因为察觉到了什么异常?
他想起下午办公室里的对话。赵建国问他解题思路是谁教的,他说自学。教授没追问,但那个眼神——锐利,审视,像要看透他。
(本章未完,请点击下一页继续阅读)