字节跳动游戏服务端三面面经
2023-02-18 16:41:53 时间
做做别人的面试题
一面
1. 小写char转大写char
大写字母AZ的ascii码的范围是65-90
大小写字母的值相差32,所以小写字母的范围是97122
void change(char source)
{
return source-32;
}
2. 比较两个char数组是否相同
直接循环
bool compare(char s[], char t[])
{
if (sizeof(s) != sizeof(t)) return false;
for (int i = 0; i < sizeof(s); i++)
{
if (s[i] != t[i]) return false;
}
return true;
}
3. printf过程
???这想问的啥
大概是printf底层调用了puts,而puts使用的是系统调用
4. c++进程异常退出有哪些可能
- 程序错误,访问非法内存,比如空指针,空路径,指针释放失败
- 程序主动结束,kill()等
- 其他进程发送终止信号
5. 重复delete出错原因
重复delete会抛出异常,指针存的是地址,所以因为第一次delete后,对应地址的内存内容被清空了,此时指针置空,对一个空指针操作会产生异常
6. 静态库和动态库
静态库一般是.lib文件, 动态库一般是dll文件
静态库是在程序编译时加载,而动态库时程序运行时加载,所以使用静态库的工程体积和占用内存较大,而动态库的较小
7. 斐波那契数列,数很大时如何优化
这个题目我理解为斐波那契数列如何优化
我会用空间换时间,定义一个数组,保存该轮计算的结果供下次使用,例如
vector<int> record<n+1, 0>;
record[1]=1;
record[2]=1;
int Feb(int n){
if(record[n]!=0)
{
record[n];
}
record[n]=Feb(n-1)+Feb(n-2);
return record[n];
}
8. 跳表和B+树和红黑树
相关文章
- 面霸告诉你这些技术面试的非技术性经验,让你的面试成功率显著提升
- 基于SpringBoot AOP面向切面编程实现Redis分布式锁
- 时序数据库为万物互联打下坚实的数仓基石
- 银丰新融:搭建名单监控管理系统,落实“三反”政策
- 养殖场新来了个“AI管家”
- Open Harmony移植:build lite配置目录全梳理
- 什么是隐私计算,它是怎样保护我们的隐私安全?
- 动手实操丨RC522射频卡模块与IC卡完成充值消费查询的技术实现思路
- 云图说 | 华为云医疗智能体EIHealth,AI赋能基因组研究
- What?构造的查询语句会导致堆栈溢出
- 开发一个不需要重写成Hive QL的大数据SQL引擎
- npm install xxxx --legacy-peer-deps命令是什么?
- 聊聊如何在华为云IoT平台进行产品开发
- 敏捷开发中如何从容应对需求变更?
- 解析数仓OLAP函数:ROLLUP、CUBE、GROUPING SETS
- 基于场景文字的多模态融合的图像分类
- 分享一个JDK批量异步任务工具CompletionService,超好用
- STM32+华为云IOT制作酒驾监控系统:上车就监控
- 源码解析Synchronous Queue 这种特立独行的队列
- 揭秘华为云GaussDB(for Influx):最佳实践之数据建模