秦飞看着,先是暗自点头。
「嗯,不错。」
「知道抛弃原始的欧拉乘积公式,直接上Riemann—Siegelformula。」
「主和项的循环写得很规范,余项展开的泰勒截断也算合理。」
「时间复杂度标准的0(t^(12)),对於一个普通学生来说,这代码底子算得上紮实了。」
秦飞在心里给出了一个「中规中矩」的评价。
然而,就在秦飞以为李东接下来会顺理成章的去写多线程加速代码时。
李东却突然停了下来。
然後就按下了退格键,竟然把刚刚写好的,那段堪称教科书般标准的黎曼一西格尔主和项循环计算代码————
删掉了一大半!
秦飞愣了一下。
「他干嘛?写错撤回了?」
但接下来李东敲出的代码,却让秦飞彻底看迷糊了。
李东没有去纠结如何加快单次计算的速度。
他有【代码直觉】还有《黎曼绝笔》里的那种降维数学思维,他现在已经可以初步找到通往现代计算机底层逻辑的完美桥梁了。
他在代码顶部,重新引入了一个名为&It;>;的头文件。
这是着名的快速傅立叶变换(FFT)开源库。
然後又在代码中定义一个密集的评估网格。
voidMultiPointEvaluationGrid(。。。)
他将需要逐个点代入t值去硬算的黎曼Zeta函数,通过构建局部多项式,强行转化为了在网格点上的泰勒级数展开。
紧接着,李东调用了FFT算法,让这些多项式在频域内进行高速相乘。
秦飞已经把降噪耳取了下来,眼睛看着李东的电脑屏幕,呼吸都变得有些急促了。
「等等————这特麽是在干什麽?」
秦飞想用自己学过的知识去去解析这套代码背後的逻辑。
「算黎曼Zeta函数,你引个快速傅立叶变换(FFT)进来干嘛?这两者八竿子打不着啊!」
「还有这个多点求值矩阵?他把泰勒展开放在网格上————」