第九十五章 演讲和炮轰
明三件事。第一,禁止鼓掌和喧哗,但可以在不影响他人的情况下小声交流;第二,如果有问题,要先举手,我同意了之后再提问;第三,有事情或者不想听了,可以从前门或者后门离开,离开的时候不要打扰他人即可。”

  他环视了一圈大厅,停了几秒种,等交头接耳的议论声音消失了之后,自顾自的点了点头,说道:“既然大家都不反对,那么我开始了。”

  “开源软件是我提出来的一种概念,陈校长邀请我来给大家讲解一些有关的知识,我很荣幸,也很感谢他的提携和支持……有关开源软件的定义和协议之类的内容比较枯燥,如果大家有兴趣的话,等演讲结束之后,可以去蔡老师那里领一份打印好的宣传册,自己拿回去看,因此就不多赘述了。”

  “在座的各位要么是学生,要么是老师,所以我今天主要跟大家谈一谈开源软件在教学方面的好处。”

  杜秋点开了第一张ppt,在背后的幕布上投影出宣传海报上的那段代码,说道:“这段代码是国内很多c语言教科书中的标准答案,然而它存在时间复杂度的问题,在实际软件开发中绝对不可能使用,你们参加工作了之后,如果敢写这样的代码,要么被老板打死,要么被顾客骂死……”

  大厅里发出轻轻的笑声,杜秋没有理会,继续说道:“但是你们在学习的时候,有几个考虑过时间复杂度的问题?”

  轻笑顿时停止了。

  “这段代码在校园里贴了3天,很多同学都给出了优化答案,有些采用了动态规划的方式,将之前计算过的中间项保存起来,在下次计算的时候直接查找,避免重复计算……”

  张栋梁看着幕布上的代码,轻轻碰了碰肖家霖,用很小但有些得意的声音说道:“和我们优化的代码一样。”

  “他说大部分人都这么做的,应该还有别的优化方式。”

  杜秋又点了一下屏幕,切换到另外一种优化方式,然后介绍道:“还有一些用了更为简单的方式,从上而下计算,用循环来实现递归……”

  肖家霖右手握拳砸了一下左手,有些懊恼的说道:“这个法子确实更简单。”

  他的懊恼还没结束,立刻变成了惊讶,因为杜秋又展示了一种优化方案,这个方案代码很长,但是把时间复杂度从o(n)大幅减少为了o(logn)。

  “靠,这怎么优化的,我看不懂。”

  “我也看不懂。”

  杜秋拿起杜春华安排他带过来提前打广告的保温杯,喝了一口水,让报告厅里的听众有时间看代码,然后才解释道:“这是我设计的一种比较特殊的优化方案,需要有一定的数学基础才行……”

  他先介绍了一个矩阵公式,然后再讲解了代码,讲的很精炼,张栋梁数学不太好,没有听懂,有些疑惑道:“一个斐波那契数列而已,有必要搞的这么复杂吗?”

  肖家霖听懂了,觉得杜秋肯定另有深意,因此沉默着没有回答。

  果然,杜秋讲解完了之后,说道:“你们可能认为这种优化方式是小题大作,吃饱了撑的,事实上这种优化方式可以触类旁通,在别的地方发挥作用,比如计算数值的整数次方,这个题目我给大家10分钟的时间,你们想想怎么编程。”

  张栋梁抬眼望去,见幕布上出现了一道题目,和书签上的那个有点类似,都是设计一段代码,实现c语言某个库函数的功能,同样属于乍一看很简单,细想却很复杂的问题,他拿出铅笔,靠着微凉的墙壁,在记事本