一时间,现场热闹非凡。大家都十分热情地涌上台前,七嘴八舌地询问一些事情。
有的人则连礼物都没来得及领,便匆匆赶回去找认识的人来报名之后的笔试。
很快就到了笔试当天,因为考试的人比较多,许莉找校务处帮忙安排了四个考场,好在他们考试的时间段一般只有一些选修课会上课,所以临时安排教室也能安排过来。
秦奕四人,一人监考一个考场。
由于考生可以自由选择考场,时小萌便跑来熟识的许莉监考的考场进行考试。
“快速排序的 C 语言实现?”
时小萌坐在考场上,拿到试卷后,看着眼前的题目,不禁有些发懵。
这两天她确实恶补了一些编程相关的知识,但也仅仅局限于用高级语言写个 HELLOWORLD 程序,而且用的还是最容易上手的 BASIC 高级语言。
数据结构这块她还没来得及了解,更别提算法了,所以她完全不知道经典快速排序算法的具体逻辑。
“唔,排序吗,我想想,一般就是从里面找出最高的,然后排在最前面,然后在剩下的找出第二高的排在第二,这个算法应该很快了吧!”她一边小声嘀咕着,一边按着自己的理解写了个 BASIC 程序。
时小萌自以为快速的这个朴素朴素排序算法自然不是快速排序,它其实是另一种经典算法——选择排序算法。
她接着往下看,发现这个问题还不止一个小问,还有接下来的几个小问:
你的这个实现空间复杂度是多少?
时间复杂度又是多少?
在任何情况下的时间复杂度都是一样的吗?
有没有什么办法提高这个算法的平均时间复杂度?
在一样的复杂度情况下,还能再优化吗?
“复杂度?” 时小萌盯着这个词看了好一会,脑海中一片空白。