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

一、八股

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

相关推荐
冰封之寂5 小时前
Docker 资源管理终极指南:CPU、内存与 IO 的精细化控制
linux·运维·服务器·docker·云计算
xiaoye-duck6 小时前
《Linux系统编程》Linux 系统多线程(五):<线程同步与互斥>线程互斥(上):从条件变量到生产者消费者模型详解
linux·线程
小柯南敲键盘6 小时前
图片翻译API接入与自动化实现指南
运维·python·自动化
云计算磊哥@7 小时前
运维开发宝典058-大型网站nginx服务器管理全集4
服务器·nginx·运维开发
952367 小时前
Docker - 基础
运维·后端·docker·容器
Promise微笑7 小时前
智能激光清障仪选型指南:高效运维与安全保障的关键考量
运维·安全
Code_Ignis7 小时前
docker国内可用源(持续维护)
运维·docker·容器
一叶龙洲8 小时前
向日葵远程Ubuntu,支持隐私屏
linux·运维·ubuntu
酷可达拉斯8 小时前
Linux操作系统-shell编程之Grep与正则表达式
linux·运维·服务器·正则表达式·centos
寒水馨9 小时前
Linux下载、安装llama.cpp-b10068(附安装包llama-b10068-bin-ubuntu-vulkan-x64.tar.gz)
linux·ubuntu·llm·llama·本地部署·llama.cpp·推理引擎