2022-09-29-深信服一面-40min
不用上下班打卡,没有人手一个监控(特别问了下),福利比较好,文化概念里没有领导,面试官在家面试,没有单独会议室。
进程的内存分配、状态。
又问了内存泄漏咋解决,和蚂蚁一样。
面试官湖南口音,有点亲切。
检测IP合法性,检测是否为B类IP,给10分钟。
// 你必须定义一个 `main()` 函数入口。
#include <iostream>
#include <string>
using namespace std;
bool checkIPv4(const string& ip){
    int32_t n=0; // number
    for(int32_t i=0;i<ip.length();i++){
        if(isdigit(ip[i])){
            int32_t j=i+1;
            while(j<ip.length()&&std::isdigit(ip[j]))
                j++;
            if(j!=ip.length()&&ip[j]!='.')
                return false;
            long long v = std::stoll(ip.substr(i,j-i));
            if(v<0&&v>=256)
                return false;
            n++;
            i=j;
        }else return false;
    }
    return n==4;
}
bool isBIpv4(const string& ip){
    int32_t v[4];
    for(int32_t i=0,n=0;i<ip.length();i++){
        int32_t j=i;
        while(j<ip.length()&&ip[j]!='.')j++;
        v[n++]=stoi(ip.substr(i,j-i));
        i=j;
        break;
    }
    if(v[0]<128||v[0]>191)return false;
    return true;
}
int main()
{
    string ip = "128.1.1.1";
    bool isip = checkIPv4(ip);
    cout<<ip<<" is a real IP? "<<(isip==1)<<"\n";
    if(isip)
        cout<<ip<<" is a B class IP? "<<(isBIpv4(ip)==1)<<"\n";
    return 0;
}
// 判断一个字符串是否为IPV4地址,如果是,判断是否为B类地址(128.0.0.0到191.255.255.255)(编程)
// 从100万条日志的文件中,如何快速获取到前10条出现频率最高的日志。(思路)
// 2048 char
// string-> hash %10000 -> fid -> hash file -> top 10 / file -> merge
// 字典树
// vector<string> 10k
// random pivotStr  -> 
// flink wordCount
// 还有没有
// 最后面试官说用堆解决,这个怎么解决?不懂。
#深信服##深信服校招##深信服面经##23届秋招笔面经##23秋招#
查看3道真题和解析

