快手【快看点】后台开发实习(C++)一面-面经

自我介绍

简历中的项目:

  • 简单介绍自己的项目,优点有哪些?
  • 并发量多大,在单机下怎么增大并发量?(我答了分布式下可以用集群等优化,单机的当时脑子懵了,没答出来)
  • 项目里面所说的10000的并发量,具体是请求的什么?

本科毕设项目:

  • 作为一个不懂仿真的人,你怎么跟我介绍你的项目

计算机基础:

  • 什么是右值引用?为什么引进右值引用?好处?与左值引用的区别是什么?
  • 看下面的代码,说一下输出:
std::string str = "Hello";
std::vector<std::string> vec;

vec.push_back(std::move(str));
std::cout << "String: " << str << std::endl;
std::cout << "Vector: " << vec[0] << std::endl;
  • 说一下push_back和emplace_back的区别
  • shared_ptr的原理?为什么引用智能指针?
  • 用shared_ptr会造成什么问题?怎么解决?
  • 怎样用会造成循环引用?简单说一下
  • 之前有没有用过多线程?--回答项目里面有用到过
  • 我们在用多线程的时候,一般会用到自旋锁和互斥锁,简单介绍一下这两个锁。
  • 怎样实现互斥锁?具体代码思想 ? --我答了一个,然后面试官说这个其实是自旋锁。。。
  • 接着上面说的你实现互斥锁的方法,你觉得这样实现能够保证线程安全吗?(我前面答的是用静态成员变量实现,这块可能概念没搞明白)

算法题:

有如下数据结构:
struct Node {
    int id;
    int type;
    int score;
};
std::vector<Node> nodes;
id是Node的唯一识别、用vec存储,现在要实现在vector中进行排序(按照score从大到小),然后对于score相同的节点,要让type相同的节点不靠在一起,如何实现?

###################
记录自己的第一次面试 😭,感觉自己菜爆了。


#快手##面经##校招##C++工程师#
全部评论
要让type相同的节点 不 靠在一起,如何实现?  是 不 靠在一起?
1 回复
分享
发布于 2020-11-19 18:15

相关推荐

6 14 评论
分享
牛客网
牛客企业服务