当前位置: 首页 > news >正文

字节C++抖音直播一面-面经总结

1、Python和C++的区别,Python的程序执行过程是怎样的?C和C++呢?

解释型-编译型
不用分号-用分号
自动垃圾回收-delete
相对较慢-执行速度快
丰富的库-标注模板库

.py-解释器-字节码-PVM-输出结果

c-c with class
malloc-new
标准库-STL
不重载-函数重载和运算符重载
没有命名空间-支持命名空间
不支持模板-支持模板

2、操作系统的内存管理方式?

1.连续内存分布
2.分页 划分为固定大小的页面
3.分段 划分成不同大小的段
4.虚拟内存 可以用大于物理内存的大小
5.内存交换
5.内存保护

3、排序算法,按照时间复杂度分类

插入排序
冒泡排序
归并排序

桶排序
计数排序
基排序(以上三个喜欢加减乘除 前两个n+k 后一个n*k
以上-稳定(具有相同排序值的元素的相对顺序不会改变)

平均时间复杂度:选帽插 n2 n长老慌了(方2)
快归队nlogn (n老 nlogn)

4、TCP和UDP的区别,以及使用场景?

连靠刘墉露营(这个我就简写了 可以看之前的面经里有解释)
TCP:FTP\SFTP\HTTP\HTTPS\SSH+自己的理解
UDP:在线游戏 实时直播+自己的理解

5、C++中vector的介绍?

大小可以动态改变,自动分配更多的内存。(但是建议reserve 因为有复制)
可以存储基本类型 自定义类型 还可以存放对象
可以对元素随机访问,支持下标直接访问
自动处理内存分配和释放

6、哈希表如何实现?哈希冲突?

哈希表是一种用于存储键值对的数据结构,它通过哈希函数将键映射到特定的索引位置,从而实现快速的查找、插入和删除操作。

哈希冲突是指不同的键通过哈希函数映射到同一个索引的位置。这种情况是不可避免的,尤其是在键的数量大于数组的大小时。处理哈希冲突的常见方法有两种:链式法和开放地址法。

链式法:发生冲突就加到这个元素的链表
开放地址法:线性探测-二次探测-双重哈希

7、索引怎么实现?B+树的优势?

索引是数据库和数据结构中用于快速查找数据的机制。常见的索引结构包括哈希索引、B+树索引等。

B+树:1.多个子节点 矮胖 搜索更加快
2.数据节点只有叶子节点
3.叶子节点之间还有指针连接,范围查找

8、手撕:Leetcode 91:解码方法

http://www.lryc.cn/news/449125.html

相关文章:

  • 浅谈stm32的GPIO引脚配置模式
  • Meta Orion 原型的生产成本约为 10,000 美元
  • MATLAB GUI设计原则与实践
  • 电脑桌面显示不完整
  • Spring Boot与观察者模式实现数据同步更新机制
  • 毕业设计选题:基于ssm+vue+uniapp的校园订餐小程序
  • 每日OJ题_牛客_HJ108求最小公倍数_C++_Java
  • 【项目总结】工程构建思路分析与分享
  • 3、AI测试辅助-测试计划编写(自动生成任务甘特图)
  • MySQL:进阶巩固-触发器
  • python获取百度地图路径规划
  • Spring Boot 进阶- Spring Boot 自定义拦截器详解
  • ACM第三次考核题解
  • 基于Vue3内置的lodash函数库实现防抖节流
  • ls -a有什么作用
  • LLM - 使用 RAG (检索增强生成) 多路召回 实现 精准知识问答 教程
  • 编程语言图书创作要注意的事情有哪些?
  • 主流高级编程语言的推出时间及年份
  • qt 模仿简易的软狗实现
  • 荣业食品销售费用每年上亿元:主要产品收入大降,电商占比过低
  • 数据结构:并查集
  • 微信小程序实战教程:轻松实现列表批量选择功能
  • 企业微信:开启客户联系和配置
  • Python发送邮件教程:如何实现自动化发信?
  • 一周热门|苏姿丰:芯片行业不能只盯着 GPU;Gartner:GenAI 即将越过期望膨胀期
  • Failed to load WebView provider: No WebView installed
  • java日志框架之Log4j
  • C++ bitset(位图)的模拟实现
  • Llama 3.2:利用开放、可定制的模型实现边缘人工智能和视觉革命
  • 解决R语言bug ‘sh‘ is not recognized as an internal or external command