《嵌入式软件开发笔试与面试手册》:https://blog.nowcoder.net/zhuanlan/jvN8gj 《软件开发笔试汇总》:https://blog.nowcoder.net/zhuanlan/0oDWVm C++&iOS&嵌入式方向【C++开发工程师、移动端开发工程师-iOS、嵌入式开发工程师岗位】 题型:通用能力-单选题,专业方向B-单选题,编程题 通用能力-单选题 1.现有10个初始归并段,其长度分别为{9.25,12,15,6,19,2,8,34,48),若要构成三路归并的最佳归并树,则需要添加虚段(长度为0的空归并段)的数量为() A 0 B 1 C 2 D 3 2.先序遍历指按照根左右的顺序沿一定路径经过路径上所有的结点,现假设一颗二叉树的后序遍历为19,52.64,37,33.21.28,中序遍历为19,37,64,52,28,33,21,则先序遍历为() A 28,64,37,19,52,21,33 B 28,37,52,19,64,21,33 C 28,37,19,64,52,21,33 D 28,37,19,64,21,52,33 3.某高校考试系统题库中,为question表建立题目和答案的索引,已知question表(题目编号qid,题目类型qtype,题目内容qcontent,答案qanswer,出题教师编号s_tid,审题教师编号v_tid),下列语句正确的是() A ALTER TABLE question ADD INDEX index_q_a (qcontent(10),qanswer(10)); B ALTER TABLE question ADD CLUSTERED INDEX index_q_a (qcontent(10),qanswer(10)); C CREATE UNIQUE INDEX index_q_a ON question (qcontent(10),qanswer(10)); D CREATE FULLTEXT INDEX index_q_a ON question (qcontent(10),qanswer(10)); 4.在 Linux中,以下哪个命令可以用于查看文件myfiles 的最后五行() A tail myfiles B tail -n +5 myfiles C tail -c 5 myfiles D tail -n 5 myfiles 5.如下一棵二叉树,分别对它进行前序遍历、中序遍历、后序遍历与层序遍历。现在给出遍历的方式和遍历的结果片段(片段是指对树遍历时的部分连续过程),请你找出不正确的描述: A前序遍历d->i->j->k->l B中序遍历n->r->o->e->p C后序遍历n->a->o->p->e D层序遍历p->k->l->m->n 6.IP协议的首部字段中,在一般的路由器转发过程中,不会发生变更的字段是() A目的地址 B生存期 C总长度 D首部校验和 7.关系数据库中的“范式"是指什么() A数据存储的物理结构 B数据库的安全性机制 C数据表中的索引 D数据库设计的规范化过程 8.计算机的二进制信号在物理层上经常用电平来对其进行编码,请问如下图所示的两种编码方式分别是? A编码1:NRZ,编码2:曼彻斯特编码 B编码1:NRZ,编码2:差分曼彻斯特编码 C编码1:NRZI,编码2:曼彻斯特编码 D编码1:NRZI,编码2:差分曼彻斯特编码 9.现有一张牛客用户信息表,结构和示例如下: 请问下列语句中哪个可以筛选出职业方向为算法的人数大于3的用户等级? A SELECT 'level' , COUNT(1) FROM user_info WHERE job='算法' AND COUNT(uid)>3 B SELECT 'level' , COUNT(uid) as cnt FROM user_info WHERE job='算法':ORDER BY 'level' HAVING COUNT(uid)>3 C SELECT 'level' , COUNT(uid) as cnt FROM user_info GROUP BY 'level' HAVING COUNT(uid)>3 AND job='算法' D SELECT 'level' , COUNT(1) FROM user_info WHERE job='算法' GROUP BY 'level' HAVING COUNT(uid)>3 10.下列关于堆排序中的的两种建堆方法说法错误的是() A筛选法建堆用于堆元素已经确定好的情况 B插入法建堆主要用于动态的增加元素建堆 C筛选法建堆的时间复杂度为O(n) D插入法建堆的时间复杂度为O(n) 11.如图所示的有向图进行拓扑排序。则可以得到的拓扑排序序列是() A a、b、c、d、e B c、a、b、d、e C c、a、d、b、e D d、c、a、b、e 12.已知一个长度为15的顺序表,其元素按关键字有序排列且没有重复元素。问其折半查找成功的平均查找长度ASL为() A 5 B 4 C 3 D 2 13.以下不属于范式化的优点是() A 更新操作快速 B 数据量小且几乎没有重复数据 C 不需要关联 D 很少需要使用DISTINCT 14.有如下递归函数 test(n),其时间复杂度为多少? int test(int n){ if(n<= 1)return 1; return(2*test(n - 1)+3*test(n - 2)); } A O(logn) B O(nlogn) C O(n^2) D O(n^3) E O(2^n) 15. DNS系统是因特网使用的命名系统,下面说法错误的是() A DNS系统中的域名中的标号英文不区分大小写 B 级别最低的域名写在最右边,级别最高的域名写在最左边 C 在域名系统中,每个域都由不同的组织管理 D 根域名服务器是最高层次的域名服务器 16.将程序装入内存的方式不包括(). A绝对装入 B相对装入 C可重定向装入 D动态运行装入 17.某歌唱比赛上共有10台音箱,为了保证音乐效果,系统会有X个播放音乐的进程竞争使用,如果每个播放音乐的进程最多需要3台音箱,那么整个系统可能发现死锁的X最小值为() A 4 B 5 C 6 D 7 18.假设4个作业到达系统的时刻和运行时间如下: 作业 到达时刻 运行时间 J1 5 3 J2 6 3 J3 6 2 J4 9 1 系统在t=7时开始作业调度。若分别采用先来先服务和短作业优先调度算法,则选中的作业分别是() A J2、J3 B J1、J4 C J2、J4 D J1、J3 19.如果想要返回在进入当前目录之前所在的目录,可以使用()。 A cd B cd ~ C cd - D cd .. 专业方向B-单选题 1.C++新特性中,auto可以让编译器在编译期就推导出变量的类型,下列选项中,关于auto的说法错误的是() A auto无法推导出模板参数 B auto可以作用的类型非常广泛,包括指针、数组和非静态成员变量等 C auto的使用必须马上初始化,否则无法推导出类型 D auto在一行定义多个变量时,各个变量的推导不能产生二义性 2.C++中,