阿里二面面经

  1. new和malloc区别

char *p = (char *) malloc(10); 
sizeof(p)  =
struct A:
{
   char a;
   char b;
   double c; 
   int d; 
   char e[30]; 
}
64位操作系统 sizeof(A)=
  1. 宏和inline区别?

  2. N个数,有一个数出现超过N/2?

  3. N个大小不超过1000w不重复数排序 ? 没理解题目

  4. 说思路

    eg: 1 9 2 3 4  的最长序列是1 2 3 4
    最大上升子序列
  5. 说思路不会

    对于两个不同的字符串,我们有一套操作方法来把他们变得相同,具体方法为:
    修改一个字符(如把“a”替换为“b”)
    删除一个字符(如把“traveling”变为“travelng”)
    比如对于“abcdefg”和“abcdef”两个字符串来说,我们认为可以通过增加/减少一个“g”的方式来达到目的。无论增加还是减少“g”,我们都仅仅需要一次操作。我们把这个操作所需要的次数定义为两个字符串的距离。 
    给定任意两个字符串,写出一个算法来计算出他们的距离。
    eg: abcd : a->d b->c c->b d->a
    dcba
  6. 代码题

    A: 10000000000 (<1000位)
    B: 10000000000 (<1000位)
    A * B 
  7. 三次握手

  8. 读文件 写文件 需要加锁吗? 为甚?

  9. 共享内存有几种?

Linux系统在编程上提供的共享内存方案有三种:

  • mmap内存共享映射
  • XSI共享内存
  • POSIX共享内存
#面经#
全部评论
读写文件需要加锁吗,感觉怪怪的,肯定要加吧
点赞 回复 分享
发布于 2020-07-17 23:33
你的二面题和我的一面题基本一样😂
点赞 回复 分享
发布于 2020-07-22 16:19
给三面了吗
点赞 回复 分享
发布于 2020-07-23 21:22
N个大小不超过1000w不重复数排序   应该是问计数排序,使用位图实现
点赞 回复 分享
发布于 2020-08-13 18:53

相关推荐

字节 飞书绩效团队 (n+2) * 15 + 1k * 12 + 1w
点赞 评论 收藏
分享
点赞 12 评论
分享
牛客网
牛客企业服务