4.下列叙述中正确的是 

A)解决同一个问题的不同算法的时间复杂度一般是不同的

B)解决同一个问题的不同算法的时间复杂度必定是相同的

C)对同一批数据作同一种处理,如果数据存储结构不同,不同算法的时间复杂度肯定相同

D)对同一批数据作不同的处理,如果数据存储结构相同,不同算法的时间复杂度肯定相同





5.下列叙述中正确的是

A)算法的空间复杂度是指算法程序中指令的条数

B)压缩数据存储空间不会降低算法的空间复杂度

C)算法的空间复杂度与算法所处理的数据存储空间有关   

D)算法的空间复杂度是指算法程序控制结构的复杂程度





6.为了降低算法的空间复杂度,要求算法尽量采用原地工作(in place)。所谓原地工作是指 

A)执行算法时不使用额外空间       

B)执行算法时不使用任何存储空间

C)执行算法时所使用的额外空间随算法所处理的数据空间大小的变化而变化

D)执行算法时所使用的额外空间固定(即不随算法所处理的数据空间大小的变化而变化)






答案:

4.

A【解析】解决同一个问题的不同算法的时间复杂度,可能相同也可能不相同。算法的时间复杂度与数据存储结构无关,对同一批数据作同一种处理或者不同处理,数据存储结构相同或者不同,算法的时间复杂度都可能相同或者不同。



5.

C【解析】算法的空间复杂度是指算法在执行过程中所需要的内存空间。算法执行期间所需的存储空间包括3个部分:输入数据所占的存储空间;程序本身所占的存储空间;算法执行过程中所需要的额外空间。



6.

D【解析】对于算法的空间复杂度,如果额外空间量相对于问题规模(即输入数据所占的存储空间)来说是常数,即额外空间量不随问题规模的变化而变化,则称该算法是原地工作的。