华为荣耀软开秋招面经问题整理

一、八股

1.linux常用命令

Linux常用命令(面试题)_linux常用命令面试题-CSDN博客

常用命令、系统命令、打包命令、vim、开关机命令

2.socket通信调用api过程

TCP

UDP

3.进程和线程的区别

进程是系统进行资源分配和调度的基本单元,线程是cpu进行分配和调度的基本单元。

一个进程可以包含多个线程,但一个线程只能属于一个进程。

进程之间不会相互影响,但线程的崩溃会导致进程的崩溃,从而影响同个进程里的其他线程。

4.C++多态

5.快排思想、时间复杂度

选择数组第一个作为哨兵值,放在数组中间,小于该值的放数组左边,大于该值的放数组右边。

时间复杂度为O(NlogN)

6.select poll epoll

select和poll都是轮询,epoll采用红黑树查找,不会随着连接数目的增多导致查询效率降低。

红黑树是兼具搜索速度和增删快的优点的一种结构。

7.static关键字

修饰变量时:会在程序运行时一直存在,存放在静态存储区,局部静态变量作用域在函数体中,群居静态变量作用域在该文件中。

修饰函数:静态函数只在该文件中可以调用,不能在其他文件中进行调用。

修饰类方法:可以不用实例化,直接使用该方法。该方法内必须都是常量或者常函数。

8.vector插入

如果vector空间不够,会重新申请一块内存,空间是原来的1.5倍,然后再把数据拷贝过来。

9.lambda函数原理

【精选】C++进阶(八) :Lambda 表达式及底层实现原理【详解】_lambda表达式底层c-CSDN博客

10.指针和引用的区别

指针是地址,引用是别名;

指针可以为空,引用不可以;

指针一般8字节,引用根据引用对象确定;

指针可以多级,引用只有一级。

将类作为参数传递时用引用。

11.重载和重写的区别

重载是函数名相同,入参不同;重写是函数名和入参均相同,函数体不同。

二、算法

1.LeetCode------240 搜索二维矩阵II-CSDN博客

2.最长递增子序列的三种算法_求最长递增子序列-CSDN博客

3.15. 3Sum(三数之和)三种解法(C++ & 注释)_三数之和 c++-CSDN博客

4.括号匹配(C++)_括号匹配 c++-CSDN博客

5.力扣第347题 堆(优先队列) 经典题 c++ 简易注释版 附(相关知识点解答)_冷yan~的博客-CSDN博客

相关推荐
软件技术员9 分钟前
Let‘s Encrypt SSL证书:acmessl.cn申请免费3个月证书
服务器·网络协议·ssl
哎呦喂-ll21 分钟前
Linux进阶:环境变量
linux
耗同学一米八22 分钟前
2024 年河北省职业院校技能大赛网络建设与运维赛项样题四
运维·网络
Rverdoser22 分钟前
Linux环境开启MongoDB的安全认证
linux·安全·mongodb
PigeonGuan33 分钟前
【jupyter】linux服务器怎么使用jupyter
linux·ide·jupyter
一条晒干的咸魚1 小时前
【Web前端】创建我的第一个 Web 表单
服务器·前端·javascript·json·对象·表单
东华果汁哥1 小时前
【linux 免密登录】快速设置kafka01、kafka02、kafka03 三台机器免密登录
linux·运维·服务器
咖喱鱼蛋1 小时前
Ubuntu安装Electron环境
linux·ubuntu·electron
ac.char1 小时前
在 Ubuntu 系统上安装 npm 环境以及 nvm(Node Version Manager)
linux·ubuntu·npm