别人的百度都是面1个小时,我上次40分钟,这次更短了,30分钟解决了。
先是问了一下项目有关的,然后开始基础。很注重动手能力,都让我写下来,再简单也写出来。
项目
架构 设计 算法 测试
fio top iostat
TCP模型画出来。
数据库select语句
查单表,多表 我抖机灵写了几个查询语句,包括inner join
select A.ts from A where value > v1 and value < v2
select A.ts,A.value from A where A.ts = B.ts
select A.ts,A.value from A inner join B ON A.ts = B.ts
C++static
静态变量 静态函数 类静态方法
C++容器
阐述一下所有常见容器的底层实现,vector list map set stack queue
map怎么实现的
红黑树
能简单描述一下吗
简单讲了定义,手撕红黑树我不会
hash_map怎么实现
hash表
怎么解决冲突
再hash法 链地址法 公共冲突区域, 开放地址法
C++11了解吗
了解,讲了一些C++11的新特性
auto怎么用
自动类型变量声明
写一个vector的使用
vector<int> a;
int n;
int t;
cin >> n;
for(auto i = 0; i < n; ++i){
cin >> t;
a.push_bcak(t);
}
for(auto i : a){
cout << i;
}
Linux命令
grep “ERR” run.log > a.txt
top
问了好几个,记不清了
类的单例模式,怎么重载单例的=运算符
网上的例子,实现构造了对象,我写了一个第一次构造,后来就返回的。如果多线程,就先判断,未构造就加锁构造,事先构造,可以避免并发加锁。
class Singleton{
public:
static Singleton* getInstance();
private:
Singleton();
//把复制构造函数和=操作符也设为私有,防止被复制
Singleton(const Singleton&);
Singleton& operator=(const Singleton&);
static Singleton* instance;
};
Singleton::Singleton(){
}
Singleton::Singleton(const Singleton&){
}
Singleton& Singleton::operator=(const Singleton&){
}
//在此处初始化
Singleton* Singleton::instance = new Singleton();
Singleton* Singleton::getInstance(){
return instance;
}