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

字节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.kler.cn/a/325831.html

相关文章:

  • mysql 的乐观锁和 mvcc 是一回事吗
  • 2、计算机网络七层封包和解包的过程
  • sharding-jdbc自定义分片算法,表对应关系存储在mysql中,缓存到redis或者本地
  • 2025年法定节假日日历
  • 大语言模型通用能力排行榜(2024年11月8日更新)
  • pytest | 框架的简单使用
  • JAVA线程基础二——锁的概述之乐观锁与悲观锁
  • 【前端】ES12:ES12新特性
  • 【Python报错已解决】TypeError: ‘list‘ object is not callable
  • 探索AI新纪元:揭秘Mammoth库的神秘面纱
  • plt.bar函数介绍及实战
  • linux服务器部署filebeat
  • 【30天玩转python】自动化与脚本编写
  • 各种 JIT(Just-In-Time) 编译器
  • Python | Leetcode Python题解之第446题等差数列划分II-子序列
  • 鸿蒙harmonyos next flutter通信之MethodChannel获取设备信息
  • 【Python】Curdling:Python 包管理的高效工具
  • 基于STM32与OpenCV的物料搬运机械臂设计流程
  • 卷积神经网络 循环神经网络
  • 定时任务上云改造方案
  • 【MySQL】常见的SQL优化方式(二)
  • 设计模式 命令模式(Command Pattern)
  • MySQL 索引最左匹配原则详解
  • Element-plus安装及其基础组件使用
  • Python轴承故障诊断 (四)基于EMD-CNN的故障分类
  • 用Python集成免费IP归属地查询API