搜狗研发笔试题解析:数据结构与网络知识
版权申诉
88 浏览量
更新于2024-09-09
收藏 508KB PDF 举报
"搜狗2016研发工程师笔试题及答案.pdf"
这份资源包含了搜狗公司在2016年研发工程师招聘笔试的题目及答案,涵盖了计算机科学和技术的多个核心知识点,对于准备IT行业面试或者提升编程技能的人员非常有帮助。
1. 缓存系统中的主要使用的数据结构:
- 正确答案:C HashMap
- 缓存系统通常利用HashMap等数据结构来快速存储和检索数据,因为它们提供了O(1)的平均时间复杂度,能够高效地处理大量的请求。
2. TCP/IP协议中的端口通信:
- 如果A机器向B机器的未监听端口发送SYN包,B机器将不会响应,因此正确答案是D:不会收到回包。
- TCP的三次握手过程中,如果目标端口未开放,接收方不会发送ACK包,而是直接忽略或发送RST包。
3. C++数组操作:
- 在二维数组中,正确访问元素的方式有多种,如:*(*(a+i)+j)=1 和 *(a[i]+j)=1。这些选项展示了不同形式的指针解引用和数组访问。
- 选项代码**(a+i)[j]=1 和 *((a+i)+j)=1也是正确的,它们分别等价于*(*(a+i)+j)和*(a[i]+j)。
4. C++中的字符串和引用:
- 代码中,test_str()返回了一个局部变量的引用,这是不安全的,因为在函数结束后,str将被销毁,返回的引用将变为悬空引用,可能导致运行时错误。正确答案:B
- 把代码里的&都去掉后,str_ref将直接复制test_str()返回的字符串,这样程序可以正常运行,但原始问题依然存在。
5. 虚函数:
- B选项是正确的:内联函数不能是虚函数,因为虚函数的动态绑定特性与内联函数的预编译优化相冲突。
- A和C是错误的:派生类可以不重新定义基类的虚函数,继承其行为;虚函数可以是静态成员函数,但这并不常见。
6. PCI总线的峰值带宽:
- 32位/33MHz PCI总线的带宽计算为:32位(位)* 33MHz(频率)/ 8(字节/位)= 133MB/s,所以正确答案是C。
7. 函数输入参数:
- A和C是正确的:对于只读输入参数,推荐使用const限制指针和引用,以防止意外修改。
- D也是正确的:如果函数不需要修改参数,使用const引用可以避免拷贝开销。
- B是错误的:值传递不仅可以用于原始类型,也可以用于其他用户定义的类型,但可能会有性能损失,因为需要复制对象。
8. 长方体盒子的体积计算:
- 这个问题没有给出完整的答案,但计算体积的公式是:体积 = 长 * 宽 * 高。所以,对于一个长20厘米,宽8厘米,高2厘米的盒子,体积将是20 * 8 * 2 = 320立方厘米。这个知识点属于基础数学,也是编程中常见的计算问题。
151 浏览量
280 浏览量
3630 浏览量
1780 浏览量
2911 浏览量
3645 浏览量
1386 浏览量
247 浏览量
1373 浏览量