海康威视 2026 秋招综合笔试题(研发岗回忆版|含答案解析)_第1页
海康威视 2026 秋招综合笔试题(研发岗回忆版|含答案解析)_第2页
海康威视 2026 秋招综合笔试题(研发岗回忆版|含答案解析)_第3页
海康威视 2026 秋招综合笔试题(研发岗回忆版|含答案解析)_第4页
海康威视 2026 秋招综合笔试题(研发岗回忆版|含答案解析)_第5页
已阅读5页,还剩2页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

海康威视2026秋招综合笔试题(通用研发岗含答案解析)考试构成说明:海康秋招一般分为两份测评——"润择综合测评"(行测加性格,通常先考)与"专业笔试"。本文为通用计算机与嵌入式方向的专业笔试,赛码平台,时长90分钟,满分100分。适用岗位:软件开发、嵌入式、后端。算法岗、FPGA岗、硬件岗另有单独试卷,本套题目通用性较强,可作为基础热身卷。项目内容满分与时长满分100分,考试时长90分钟题型结构单项选择15题(每题3分,45分);多项选择5题(每题4分,20分);简答3题(每题5分,15分);编程2题(每题10分,20分)一、单项选择题(每题3分,共15题,合计45分)1.关于C语言中的constchar*p与char*constp,描述正确的是()

A.前者不能通过p修改指向的内容,后者指针本身不可修改B.前者指针不可修改,后者指向内容不可修改C.两者都不能修改指向的内容D.两者的指针都不能指向别的地址

答案:A解析:constchar*p是指向常量的指针,内容只读、指针可换地址;char*constp是常量指针,指针本身固定、内容可改。2.64位Linux下int*p指针占用的字节数是()

A.1B.2C.4D.8

答案:D解析:64位系统地址宽度为64bit,任何指针均占8字节,与所指类型的大小无关。3.关于epoll相比select的优势,说法错误的是()

A.不需要每次遍历全部fd集合B.内核使用就绪链表,可近似O(1)拿到就绪fdC.fd数量上限受rlimit限制D.支持水平触发与边缘触发两种模式

答案:C解析:select存在FD_SETSIZE固定上限(通常1024),而epoll没有这个固定上限,这是其核心优势。需注意:epoll虽无固定上限,但进程可打开的fd总数仍受系统RLIMIT_NOFILE约束,C项的表述混淆了两种限制的来源。4.下列不属于TCP拥塞控制阶段的是()

A.慢启动B.拥塞避免C.快重传与快恢复D.滑动窗口

答案:D解析:滑动窗口属于流量控制机制,用于匹配收发双方的处理能力;拥塞控制由慢启动、拥塞避免、快重传、快恢复构成。5.关于进程与线程,说法正确的是()

A.线程是资源分配单位B.同一进程内的线程共享独立地址空间C.同一进程内的线程共享堆与全局变量,栈各自独立D.线程切换需要刷新页表

答案:C解析:进程是资源分配单位,线程是调度单位;同进程线程共享地址空间,但栈、寄存器私有。线程切换不刷新页表,进程切换才需要。6.死锁的四个必要条件不包括()

A.互斥B.占有且等待C.不可抢占D.优先级反转

答案:D解析:死锁四条件为互斥、占有并等待、不可剥夺、循环等待;优先级反转是实时调度中的问题,与死锁成因无关。7.二叉树层序遍历所采用的数据结构是()

A.栈B.队列C.优先队列D.哈希表

答案:B解析:层序遍历属广度优先(BFS),用队列;前序、中序、后序遍历属深度优先,用栈。8.下列属于稳定排序的是()

A.快速排序B.堆排序C.归并排序D.选择排序

答案:C解析:稳定排序有冒泡、插入、归并;快排、堆排、选择排序与希尔排序均不稳定。9.HTTPS的加密处理位于OSI模型的()

A.网络层B.传输层C.应用层D.数据链路层

答案:C解析:HTTPS即HTTP加TLS,TLS处于应用层与传输层之间,一般归入应用层。10.DHCP使用的传输层协议及端口是()

A.TCP80B.UDP67与68C.TCP22D.UDP53

答案:B解析:DHCP服务端使用67端口、客户端使用68端口,基于UDP广播;UDP53属DNS,TCP22属SSH。11.关于宏定义与内联函数的对比,说法错误的是()

A.宏没有类型检查,容易出现副作用B.内联函数一定会被编译器展开C.内联函数有类型检查D.宏在预处理阶段展开,内联函数在编译期展开

答案:B解析:inline只是对编译器的建议,编译器可根据函数体大小、递归等因素拒绝内联。12.缺页中断属于()

A.输入输出中断B.外部中断C.硬件中断D.程序性异常

答案:D解析:缺页是CPU访问了有效但尚未装入内存的虚拟地址而触发的故障,属程序性异常(fault),处理完成后可重新执行该指令。13.Linux中fork之后,父子进程共享的是()

A.文件描述符表B.栈C.堆D.进程ID

答案:A解析:fork采用写时复制(COW),已打开的文件描述符表被共享,指向同一file结构;栈、堆、数据段与PID各自独立。14.下列哈希冲突解决方法中,不属于开散列(拉链)思路的是()

A.链地址法B.开放寻址法C.拉链法D.桶链表法

答案:B解析:开放寻址法(线性探测、二次探测、双重哈希)属闭散列,所有元素仍存放在表内;链地址法与桶链表属开散列。15.单例模式中懒汉式的线程安全实现,通常依靠()

A.互斥锁加双重检查锁(DCL)B.直接new出实例C.不加同步直接返回D.信号量

答案:A解析:双重检查锁先判空再加锁、锁内二次判空,兼顾延迟实例化与减少锁竞争;实现时实例引用须加volatile防止指令重排。二、多项选择题(每题4分,共5题,合计20分;多选、少选均不得分)1.属于TCP可靠传输机制的有()

A.序号与确认应答ACKB.超时重传C.流量控制(滑动窗口)D.拥塞控制

答案:ABCD

解析:四项共同构成TCP的可靠性与效率保障体系。2.Linux进程间通信(IPC)的方式包括()

A.管道pipeB.命名管道FIFOC.共享内存D.消息队列与信号量

答案:ABCD

解析:四项均为Linux标准IPC手段,此外还有信号、socket等。3.C语言中属于未定义行为的有()

A.i=i++B.数组越界访问C.野指针解引用D.if(a==10)

答案:ABC

解析:前三项的结果依赖编译器与运行环境,标准未作规定;D项是普通的条件判断,属合法语句。4.关于红黑树性质,描述正确的有()

A.节点非红即黑,根节点为黑色B.叶子节点(NIL)为黑色C.红色节点的两个子节点必为黑色D.任一节点到其后代叶子节点的所有路径上黑节点数目相等

答案:ABCD

解析:四项即红黑树的五条经典性质(含新插入节点为红色),是其近似平衡与O(logn)查找的保证。5.下列属于Linux同步原语的有()

A.mutex互斥锁B.spinlock自旋锁C.semaphore信号量D.condition_variable条件变量

答案:ABCD

解析:四项均为常用同步手段,需注意各自适用场景:自旋锁适合短临界区且不可睡眠,互斥锁可睡眠。三、简答题(每题5分,共3题,合计15分)1.简述死锁的四个必要条件,以及如何破坏死锁四个必要条件:互斥、占有且等待、不可抢占、循环等待。破坏思路:破坏占有且等待:一次性申请全部所需资源,或在申请失败时释放已占资源。破坏不可抢占:允许资源被剥夺,申请不到时强制释放。破坏循环等待:为资源全局编号,要求按序申请,避免形成环路。减弱互斥:尽量用可共享的读写锁、无锁结构替代独占资源。2.简述TCP三次握手与四次挥手,并说明为什么握手需要3次、挥手需要4次三次握手:客户端发SYN;服务端回SYN加ACK;客户端再回ACK。目的是双向确认收发能力并同步初始序列号。四次挥手:客户端发FIN表示不再发送数据;服务端回ACK确认;服务端把剩余数据发完后发FIN;客户端再回ACK确认。次数差异的原因:TCP是全双工,一方关闭发送方向后,另一方可能仍有数据在传输,其ACK与FIN无法合并发送,因此需要四次;三次握手则可用一个SYN加ACK合并应答,故只需三次。3.fork时的写时复制(COW)原理是什么fork创建子进程时并不立即复制物理内存页,而是让父子进程共享同一批物理页,并将页表项标记为只读。任一方尝试写入时触发缺页异常,内核此时才复制一页新的物理内存给写入方,并恢复其可写权限。优点:fork速度极快、内存占用低,特别适合fork后立即exec的短生命周期子进程场景。四、编程题(每题10分,共2题,合计20分)1.反转单链表(LeetCode206)cpp

structListNode{

intval;

ListNode*next;

ListNode():val(0),next(nullptr){}

ListNode(intx):val(x),next(nullptr){}

};

ListNode*reverseList(ListNode*head){

ListNode*pre=nullptr;

ListNode*cur=head;

while(cur){

ListNode*nxt=cur->next;

cur->next=pre;

pre=cur;

cur=nxt;

}

returnpre;

}2.判断字符串是否为回文(忽略大小写,只比较字母与数字)cpp

#include<iostream>

#include<string>

#include<cctype>

usingnamespacestd;

boolisPalindrome(strings){

intl=0,r=s.size()-1;

while(l<r){

while(l<r&&!isalnum(s[l]))l++;

while(l<r&&!isalnum(s[r]))r--;

if(tolower(s[l])!=tolower(s[r]))returnfalse;

l++;

r--;

}

returntrue;

}解析:双指针从两端向内收缩,先跳

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论