深信服

一面

面试时间 :2020-02-13
面试岗位:Linux C/C++开发

  1. 介绍HDFS?
    HDFS是一个分布式的文件存储系统,专门存储超大数据文件,为整个Hadoop生态圈提供了基础的存储服务,具有高容错性、高吞吐量等特点。
    HDFS的特点:
    a. 为了节省寻址时间,HDFS上的数据分块存储,块大小通常是64M或128M,一个大文件可能被分块后存储在多块磁盘。
    b. 一次写入,多次读取。简化了数据一致性问题,同时提高了吞吐量。
    c. 因为HDFS具有高度容错行,可以部署在廉价的普通磁盘上。

  2. sizeof()和strlen()的区别?
    sizeof()是运算符,返回的是数组大小、指针变量本身占用空间大小等,sizeof()返回值在编译时就确定了。
    strlen()是返回,它的参数只能是字符指针,返回的是字符串的长度。

  3. fprintf()的安全隐患?
    多线程下不是同步的。

  4. gdb常用命令?
    https://blog.csdn.net/tzshlyt/article/details/53668885

  5. TCP和UDP的区别?UDP变成跟TCP一样可靠?
    a. TCP是面向连接的,UDP不是面向连接的。
    TCP实现了超时重传、有序传输、拥塞控制。
    UDP对系统资源消耗更少。
    b. 按照TCP协议实现可以让UDP和TCP一样可靠,对UDP的包编号,每个包发送ACK,接收端控制有序接收,超时重试。

  6. 统计文档中字符出现的次数?统计文档中出现次数最多的三个单词?
    a. 建立一个长度为26的整形数组,遍历所有字符,字符在数组中的位置为字符减去字符'a',数组对应位置加1。
    b. 用hash表统计单词出现次数,用3个变量或者堆遍历一遍就可以得到结果。

  7. 有一座桥,同时只能通过两个人,现在有4个人,这4个人过桥分别需要的时间为1、2、5、8分钟,求最小耗时?把这个问题抽象成数学问题?怎么求解?
    a. 8
    b. 把n个整数分成两部分,使两部分和的差距最小,从n个数中选择k个数,使k个数最接近(sum + 1) / 2,转换成0,1背包问题求解。

我的问题:

  1. 想了解下具体业务?
  2. 怎么培养人才,怎么保证代码的可靠性?

你可能感兴趣的:(深信服)