C++

已看

        struct line {
        int length;
        char contents[0];
    };
     
    //...ommit code here
        {
            struct line *thisline
            = (struct line *) malloc (sizeof (struct line) +this_length);
            thisline->length = this_length;
        }
7) strcpy实现方法及其缺点,strncpy?
8) 野指针?
9) linux io和标准io区别?
	- 主要区别:
        - 系统IO:不带缓冲机制,系统IO可以操作普通文件与驱动文件
        - 标准IO:带缓冲机制,标准IO只可以操作普通文件。提供多种的格式的输入输出如(字符串、整形)
        - 参考: [Linux中的系统IO与标准IO](https://blog.csdn.net/laifengyuan1/article/details/86620421)
10) http网址访问过程,get post区别?
- 二面:
    - 谈谈io复用,select?
        - fdset, fdzero
    - 谈谈项目***享内存实现方法?
    - linux下编译调试方法,如何调试内存泄露问题?
        - 首先命令行工具: ps -aux (VSZ值)
        - 静态代码分析工具: BEAM
        - 动态分析工具: valgrind
        - [Linux平台中调试C/C++内存泄漏方法](https://www.jianshu.com/p/c78c7c2535f1)
    - 给几百万个网址,如何高效找出特定网址是否在其中?
        - (布隆过滤器)布隆过滤器优缺点,如何解决其缺点?
        - [详解布隆过滤器的原理、使用场景和注意事项](https://www.jianshu.com/p/2104d11ee0a2)
        - [布隆过滤器及优缺点](https://blog.csdn.net/baidu_37964071/article/details/79873090)
        - 什么是布隆过滤器
            - 本质上布隆过滤器是一种数据结构,比较巧妙的概率型数据结构(probabilistic data structure),特点是`高效地插入和查询(不能删除)`,可以用来告诉你 “某样东西一定不存在或者可能存在”。
            - 相比于传统的 List、Set、Map 等数据结构,它更高效、占用空间更少,但是缺点是其返回的结果是概率性的,而不是确切的。
        - 实现原理
            - bit 数组(如果想实现删除,就不能使用bit了)
            - 多个哈希函数族
    - 给一容量较大非法单词词典,如何判断某输入中是否有非法单词?
- 建立字典树--实现一次遍历就可做出判断

未看

已看

未看