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

一、八股

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博客

相关推荐
chlk12313 小时前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑14 小时前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件14 小时前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
碳基沙盒15 小时前
OpenClaw 多 Agent 配置实战指南
运维
深紫色的三北六号1 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash1 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI2 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行2 天前
Linux和window共享文件夹
linux
Sinclair2 天前
简单几步,安卓手机秒变服务器,安装 CMS 程序
android·服务器
木心月转码ing3 天前
WSL+Cpp开发环境配置
linux