• 浠嬬粛 首页

    我的智商逐年递增

  • 阅读设置
    第126章 算我的(3/6)
    伺服器要在後把这几万个订单反覆遍历,比对,排序。」

    「然後呢?」陈拙问。

    「然後cpu占用率直接飙到百分之百,内存吃满,机箱风扇转得快冒烟了,系统死机。」楚戈靠在椅背上。

    「这算法的时间复杂度太高了,我和陆嘉在对面调了一下午的参数,怎麽改最後都是死循环,老板说今晚必须看到跑通,要是扛不住这三万条并发,万把块钱的尾款就没了。」

    楚戈说完,眼巴巴地看着陈拙。

    「拙哥,你脑子好使,数学底子厚,你帮着捋捋,这底层逻辑到底是哪出毛病了?」

    陈拙坐在椅子上,目光落在桌面的那本《朗道》上,静静地思考了几秒钟。

    他听懂了。

    楚戈和陆嘉遇到的问题,在於他们试图用最直接,最笨重的穷举法去走迷宫。

    在数据量小的时候,挨个判断身份,排队,分配,计算机算得过来。

    但数据量一旦呈指数级爆发,嵌套循环就会变成一个计算黑洞。

    这和他之前看普林斯顿团队那篇论文时遇到的死结,在纯逻辑上是同构的。

    德里安的团队试图用连续的时空微积分去跨越奇点,结果遇到了发散,楚戈他们试图用线性的条件判断去处理庞大的交叉订单,结果遇到了内存溢出。

    陈拙点了点头。

    「思路从一开始就偏了。」

    陈拙语气平稳。

    楚戈愣住了,半张着嘴。

    「偏了?

    按条件判断分配,这不是编程书上教的最稳妥的统筹方法吗?」

    陈拙没急着解释。

    他伸手把刚才那张写满了物理推导公式的草稿纸拿了过来。

    他看了一眼纸面上密密麻麻的算式,那是刚刚补全的朗道理论,陈拙很自然地把纸翻了个面,露出印着废弃c语言代码的那一面。

    这上面的代码行距很宽,中间有很多留白的区域。

    在空白处,用钢笔轻轻点了一个黑色的墨点。

    「你们把这些订单当成了排队买票的人。」

    陈拙一边画,一边说。

    「队伍太长,你们就在检票口设了三个不同的通道,每过来一个人,你们都要问一遍:你是哪里的?

    然後再决定让他走哪个通道,人一多,检票口就彻底堵死楚戈凑近了点,盯着陈拙笔尖下那个黑点。

    「那不排队怎麽分?」楚戈问。

    陈拙在那个黑点旁边,又画了几个相隔很远的黑点,然後用直线把它们连接起来。

    「当成一个个独立的状态节点。」

    陈拙手腕微转,在纸上画出了一个二分图的结构,而不是楚戈说的树状分支。
    本章未完,请翻下一页继续阅读.........