算法时间复杂度与SQL、Makefile基础知识测试题
算法时间复杂度与SQL、Makefile基础知识测试题
27、以下代码的时间复杂度为?
int i = 1;
while(i <= n){
i = i * 2;
}
A、O(n) B、O(1) C、O(log2n) D、O(✔n)
答案:C、O(log2n)
解析:
循环条件 i <= n 中,变量 i 在每次迭代中都会乘以 2,因此 i 的值会呈指数级增长,直到超过 n。假设循环执行了 x 次后结束,则有 2^x > n,解得 x > log2n。因此,该代码的时间复杂度为 O(log2n)。
28、以下哪些 SQL 语句不会修改磁盘上数据文件的内容?
A、SELECT B、UPDATE C、DELETE D、INSERT
答案:A、SELECT
解析:
SELECT语句用于从数据库中检索数据,不会对数据进行任何修改。UPDATE语句用于修改数据库表中已有的记录。DELETE语句用于删除数据库表中的记录。INSERT语句用于向数据库表中插入新的记录。
29、关于 MAKEFILE,以下描述错误的是?
A、可以通过 make 命令执行 MAKEFILE
B、make 不是通过递归执行的
C、Makefile 文件,以告诉 make 命令需要怎么样的去编译和链接程序
D、cmake 和 autotools 是帮助开发者生成 Makefile 的工具
答案:B、make 不是通过递归执行的
解析:
make命令可以递归执行 Makefile 文件,例如,一个 Makefile 文件可以调用另一个 Makefile 文件中的规则。cmake和autotools是帮助开发者生成 Makefile 的工具,可以简化 Makefile 的编写过程。
原文地址: https://www.cveoy.top/t/topic/F8w 著作权归作者所有。请勿转载和采集!