[实战演练]2014腾讯校招软件开发笔试题
一,不定项选择题(共25题,每题4分,共100分,少选、错选、多选不得分)
1. 已知一棵二叉树,如果先序遍历的节点顺序是:ADCEFGHB,中序遍历是:CDFEGHAB,则后序遍历的结果是:( )。
A CFHGEBDA B CDFEGHBA C FGHCDEBA D CFHGEDBA
2. 下列哪两个数据结构,同时具有较高的查找和删除性能:( )。
A 有序数组 B 有序链表 C AVL树 D Hash表
3. 下列排序算法中,哪些的时间复杂度不会超过 nlogn ( )。
A 快速排序 B 堆排序 C 归并排序 D 冒泡排序
4. 初始顺序为: 1、8、6、2、5、4、7、3一组数采用堆排序,当建堆(小根堆)完毕时,堆所对应的二叉树中序遍历结果为 ( )。
A 8、3、2、5、1、6、4、7
B 3、2、8、5、1、4、6、7
C 3、8、2、5、1、6、7、4
D 8、2、3、5、1、4、7、6
5. 当n=5时,下列函数的返回值是:( )。
1 int foo(int n) 2 { 3 if(n<=2) 4 return n; 5 return foo(n-1)+f(n-2); 6 }
A 5 B 7 C 8 D 10
6. S市A、B共有两个区,人口比例为3:5,据历史统计A区的犯罪率为0.01%,B区为0.015%,现在有一起新案件发生在S市,那么案件发生在A区的可能性有多大:( )。
A 37.5% B 32.2% C 28.6% D 26.1%
7. Unix系统中,下列哪些可以用于进程间的通讯:( )
A Socket B 共享内存 C 消息队列 D 信号量
8. 静态变量通常存储在进程中哪一区:( )
A 栈区 B 堆区 C 全局区 D 代码区
9. 查询性能 ( )
A 在Name字段上添加主键
B 在Name字段上添加索引
C 在Age字段上添加主键
D 在Age字段上添加索引
10. IP地址131.153.12.71是一个( )类IP地址。
A A B B C C D D
11. 下推自动机识别的语言是 ( )
A 0型语言 B 1型语言 C 2型语言 D 3型语言
12. 下列程序的输出是:( )
1 #define add(a,b) a+b 2 int main() 3 { 4 printf("%d\n", 5*add(3,4)); 5 return 0; 6 }
A 23 B 35 C 16 D 19
13. 浏览器访问某页面,HTTP协议返回状态码为403时表示:( )
A 找不到该页面 B 禁止访问
C 内部服务器错误 D 服务器繁忙
14. 如果某系统15*4=112成立,则系统采用的是( )进制。
A 6 B 7 C 8 D 9
15. 某段文本中各个字母出现的频率分别是{a:4, b:3, o:12, h:7, i:10},使用huffman编码进行编码,则哪种是可能的编码: ( )
A a(000),b(001),h(01),i(10),o(11)
B a(0000),b(0001),h(001),o(01),i(1)
C a(000),b(001),h(01),i(10),o(00)
D a(0000),b(0001),h(001),o(000),i(1)
16. TCP和IP分别对应了OSI中的哪几层?( )
A Application Layer B Presentation Layer
C Transport Layer D Network Layer
17. 一个栈的入栈顺序是A,B,C,D,E,则栈的不可能的输出序列是?( )
A EDCBA B DECBA C DCEAB D ABCDE
18. 同一进程下的线程可以共享以下?( )
A stack B data section C register set D file fd
19. 对于派生类的构造函数,在定义对象时构造函数的执行顺序为?( )
1:成员对象的构造函数 2:基类的构造函数 3:派生类本身的构造函数
A 123 B 231 C 321 D 213
20. 如何减少换页错误?( )
A 进程倾向于占用CPU
B 访问局部性(locality of reference)满足进程要求
C 进程倾向于占用I/O
D 使用基于最短剩余时间(shortest remaining time)的调度机制
21. 递归函数最终会结束,那么这个函数一定:( )
A 使用了局部变量 B 有一个分支不调用自身
C 使用了全局变量或者使用了一个或多个参数 D 没有循环调用
22. 编译过程中,语法分析器的任务是( )
A 分析单词是怎样构成的 B 分析单词串是如何构成语句和说明的
C 分析语句和说明是怎样构成程序的 D 分析程序的结构
23. 同步机制应遵循哪些基本准则:( )
A 空闲让进 B 忙则等待 C 有限等待 D 让权等待
24. 进程进入等待状态有哪几种方式?( )
A CPU调度给优先级更高的线程 B 阻塞的线程获得资源或者信号
C 在时间片轮转的情况下,如果时间片到了 D 获取spinlock未果
25. 设计模式中,属于结构型模式的有哪些?( )
A 状态模式 B 装饰模式 C 代理模式 D 观察者模式
二,填空题(共4题10个空,每个空2分,共20分)
1. 设有字母序列{Q,D,F,X,A,P,N,B,Y,M,C,W},请写出按2路归并排序方法对该序列进行一趟扫描后的结果是( )。
2. 关键码序列(Q,H,C,Y,Q,A,M,S,R,D,F,X),要按照关键码值递增的次序进行排序,若采用初始步长为4的Shell排序法,则一趟扫描的结果是( );若采用以第一个元素为分界元素的快速排序法,则扫描一趟的结果是( )。
3. 二进制地址为011011110000,大小为(4)10和(16)10块的伙伴地址分别为:( )和( )。
4. 设t是给定的一棵二叉树,下面的递归程序count(t)用于求得:二叉树t中具有非空的左、右两个儿子的节点个数N2;只有非空左儿子的个数NL;只有非空右儿子的节点个数NR和叶子节点个数N0.N2、NL、NR、N0都是全局变量,且在调用count(t)之前都置为0.
1 typedef struct node 2 {int data; struct node *lchild, *rchild;}node; 3 int N2, NL, NR, N0; 4 void count(node *t) 5 {if (t->lchild!=NULL) if _______ N2++; else NL++; 6 else if _______ NR++; else ________; 7 if (t->lchild!=NULL) ________; if (t->rchild!=NULL) ________; 8 }/*call from :if(t!=NULL) count(t);*/
三、Web前端方向简答题
(略)
四、其他方向简答题(共2题,每题20分,选做1题,不计入总分)
1. 请设计一个排队系统,能够让每个进入队伍的用户都能看到自己在队列中所处的位置和变化,队伍可能随时有人加入和退出,当有人退出影响到用户的位置排名时需要即时反馈到用户。
2. A,B两个整数集合,设计一个算法求它们的交集,尽可能的高效。
我的答案:
选择题
1. D
2. CD AVL树和Hash表
3. BC 堆排序和归并排序
4. A
5. C f(1)=1, f(2)=2, f(3)=3, f(4)=5, f(5)=8
6. C 28.6%
7. ABCD 全部正确
8. C 全局区
9. B
10. B
11. C
12. D 19 define后面的a+b不带括号~
13. B 禁止访问
14. A 6进制
15. A
16. CD 网络层和运输层
17. C
18. BD
19. D
20. BC
21. B
22. B
23. ABCD 全部正确
24. D
25. BC
填空题
1. DQFXAPBNMYCW
2. QACSQDFXRHMY FHCDQAMQRSYX
3. 011011110100 011011100000 (从网上看来的答案,还没弄清楚伙伴地址的概念……)
4. 第一个空 (t->rchild!=NULL) 第二个空 (t->rchild!=NULL) 第三个空 N0++ 第四个空 count(t->lchild) 第五个空 count(t->rchild)
其他方向简答题
略
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)