Akuna全部面经,bar很高

2016-08-01 YongHao Hu 更多博文 » 博客 » GitHub »

C++

原文链接 http://yonghaowu.github.io/2016/08/01/Akuna_bar/
注:以下为加速网络访问所做的原文缓存,经过重新格式化,可能存在格式方面的问题,或偶有遗漏信息,请以原文为准。


首先做了笔试题, 我觉得笔试题非常好, 才对公司有兴趣的. 笔试题忘记了


二面

全程英文,问了很多问题

  1. 算法,判断一个数是否power of two的方法 这个有多种办法,不断除以2是最笨的方法;还可以用二进制,直接&1判断最后一位是不是1;还有利用 C 语言库函数等等;

  2. quicksort过程,平均,最差时间复杂度,例子是怎么样 这个也很好说

  3. 调用函数的汇编代码;

  4. 如果有很多参数,register存不了怎么样;

  5. 32位的汇编跟64位有什么区别?

  6. smart pointer是怎么样的,为什么可以这样

  7. share pointer跟unique pointer有什么区别;

  8. segment,section在程序中是怎么分布;

  9. nmap映射的是程序的什么;

  10. IPC的方法, 共享内存的缺点,什么方法是reliable的;

  11. TCP,UDP的区别,优缺点;

  12. TCP肯定不会有data loss吗?

  13. 为什么TCP稳定;

  14. gdb怎么调试多线程,怎么看程序栈;

  15. 多线程怎么保证线程安全,知道spin lock是什么吗?怎么实现;condition_variable有哪些API;dead lock是什么,有哪些方法去解决。

  16. Linux怎么创建儿子进程; Linux调用system call的过程;为什么进入kernel space; 调用system call优缺点;

  17. tcp中send的block跟unblock方法有什么区别

  18. 虚函数是什么,有什么用,为什么需要虚函数destruction;

  19. C++11中怎么表示原子变量;

  20. 汇编中有一个方法用来保证原子性交换变量,是怎么样的?

  21. signal是怎么样的,有什么用;


最终面

template<int size> pow()//实现这个功能

1.

vector<stirng> my_string= {"hello", " ", "world"};
string &a = my_string[0];

输出a的内容会是什么

2. read(fd, xx)直接读取文件内容与nmap fd后memcpy的区别是什么.