不会影响程序的运行,但重大的错误却一定会造成程序的崩溃。在这里我想用人脑和计算做一个比较,人类的大脑要是崩溃了,就会变成精神病,计算机程序要是崩溃了,则会得出两种结果,第一是计算机彻底死机,无法运转,第二是计算机还能运行,但无论你输入什么指令,它得出的都会是错误的结果。”
“从这里不难看出编程的重要性,我刚才提到了计算机算法这个概念,这个概念主要针对的是计算机编程,所谓的算法,指的就是编程时进行的数学运算。”
“任何程序在编写之前,都需要确定它是用来干什么的,我管这个叫做‘程序的指向性’,说白了就是你需要先确定一个结果,然后通过数学运算,在编程的时候把这个结果的运算过程用计算机语言完整的展现出来,这其中数学运算的过程,就是我所说的算法。”
牛小强说到这里稍作停顿,让大家有消化和吸收的时间。
他刚才讲的这些内容来自计算机系的教授们全都明白,不太明白的是那些教授夫人和其他学科的教授。牛小强既然已经承诺要让大家都能尽量听懂,当然要照顾一下这些外行们了。
停顿了将近十秒,牛小强这才接着说道:“打个比方说,如果你想要在程序中输入数字2这个结果,最简单的最直白的运算过程应该是1+1=2,如果你使用了其他的算法,比如说你的计算过程是+=2,这无疑将会大大增加程序的臃肿和复杂性,程序要是变得臃肿和复杂了,就很容易产生逻辑性漏洞。”
牛小强说到这里看向了泰格:“我刚才就是通过试探摸清楚了斯坦福大学在编程中使用了哪种算法,然后再根据自己得到的结果推导出了深蓝后续的逻辑运算过程,因此我才能如此精准的提前预判后续的所有步骤,很遗憾,斯坦福大学使用的算法跟我刚才所说的后者差不多,你们没有使用1+1=2这种最简单最科学的算法,而使用了+=2来进行程序语言的汇编,所以我才会说你们的算法很落后,并被我找到了漏洞,这才发生了刚才那种看似不可思议的事情。”
牛小强打的这个比方通俗易懂,就算是不懂计算机的人,基本也都能够听懂。
在场的人全都露出恍然大悟的神色,纷纷点头表示自己已经明白了牛小强的意思。
牛小强并未就此打住,他接着说道:“编程算法是为编程服务的,在确保程序的功能性不受影响的前提条件下,越是简练的算法就越能提升程序的执行效率,该如何做到这点呢?在我看来有两个途径。”
这话一说出口,在场的计算机系的教授们全都打起了精神。此刻的他们已经全部摆正了自己的心态,真的把牛小强当成自己的老师看待。
牛小强虽然还是个大学生,但仅仅从他刚才的发言来看,他对于编程的理解已经高深到了一个十分恐怖的地步。
请收藏:https://m.jtxs.cc
(温馨提示:请关闭畅读或阅读模式,否则内容无法正常显示)