1、单选题(1)设一组初始记录关键字序列为(4,1,7,6,3,2,5),则根据这些记录关键字构造的二叉排序树的平均查找长度约为_。A.1.7B.1.8C.1.9D.2.0E.2.1F.2.2(2)已知 int a[]={1,2,3,4,5};int*p[]={a,a+1,a+2,a+3};int**q=p;表达式*(p[0]+1)+**(q+2)的值是_。A.5B.6C.7D.8E.4F.9(3)给定一个整数 sum,从有 N 个无序元素的数组中寻找元素 a、b、c、d,使得 a+b+c+d=sum,最快的平均时间复杂度是_。A.O(N^2)B.O(logN)C.O(N)D.O(N^3)E.O(N^2logN)F.O(N^4)(4)以下关于 STL 的描述中,_是错的。A.STL 容器是线程不安全的B.当容量不够时,vector 内部内存扩展方式是翻倍C.std::sring 中可以存储多个‘\0’字符D.std::bitset 不是一个 STL 容器E.std::stack 是用 deque 实现的F.std::sort 可能是不稳定排序(5)设 int a=1,x=2,执行语句 a=x>1?5*x:(x=7);后,变量 a 和 x 的值分别是_。A.a=1 x=2B.a=1 x=10C.a=5 x=7D.a=10 x=2E.a=10 x=10F.a=2 x=10(6)下面代码在 64 位 Linux 系统编译执行,输出结果是_。#includevoid func(){static int b;printf("%d",b);}int main(){static int b=20;func();}A.0B.20C.输出不确定D.编译错误E.运行出错F.以上均不正确(7)数字(100!)后面有_个 0。A.18B.20C.24D.28E.30F.100(8)订单 orders 的表结构如下,要统计出每日付款订单笔数、付款金额(单位:元)、付款人数、客单价(单位:元,客单价的定义是销售总额/买家总数)以及单笔最高金额(单位:元),下面 SQL 语句正确的是_。SELECT buyer_date,_,_,_,_,_FROM orders_buyer_dateA.count(*),sum(pay_amount),count(buyer_id),sum(pay_amount)/count(buyer_id),min(pay_amount),group byB.count(1),sum(pay_amount)/100,count(distinct buyer_id),sum(pay_amount)/count(distinctbuyer_id)/100,max(pay_amount)/100,group byC.count(order_no),sum(pay_amount)/100,count(buyer_id),sum(pay_amount)/count(buyer_id)/100,max(pay_amount)/100,group byD.count(buyer_id),sum(pay_amount)/100,count(distinct buyer_id),avg(pay_amount)/100,max(pay_amount)/100,group by(9)中国人口数量在 10 亿~20 亿,如果用二进制记录人口数量,则至少需要_位的长度。A.30B.31C.33D.63E.64F.65(10)以下程序存在的问题是_。#includeusing namespace std;class cat{int age;publ...