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

一、八股

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

相关推荐
轩辰~6 分钟前
网络协议入门
linux·服务器·开发语言·网络·arm开发·c++·网络协议
wanhengidc1 小时前
短视频运营行业该如何选择服务器?
运维·服务器
雨中rain1 小时前
Linux -- 从抢票逻辑理解线程互斥
linux·运维·c++
-KamMinG1 小时前
Centos7.9安装openldap+phpldapadmin+grafana配置LDAP登录最详细步骤 亲测100%能行
运维·grafana
Bessssss1 小时前
centos日志管理,xiao整理
linux·运维·centos
s_yellowfish1 小时前
Linux服务器pm2 运行chatgpt-on-wechat,搭建微信群ai机器人
linux·服务器·chatgpt
豆是浪个1 小时前
Linux(Centos 7.6)yum源配置
linux·运维·centos
vvw&1 小时前
如何在 Ubuntu 22.04 上安装 Ansible 教程
linux·运维·服务器·ubuntu·开源·ansible·devops
我一定会有钱1 小时前
【linux】NFS实验
linux·服务器
王铁柱子哟-1 小时前
解决 正在下载VS Code 服务器... 问题
运维·服务器