笔试盘点

cvte笔试 12.26

编程题

  • 两题都是考虑sort的compare的方法重写。

    把数组排成最小的树(中等)

  • 这题来源于剑指offer,在笔试的时候,想不出来用字符串相加这个,一种用其他的方法,虽然脑海中出现了结果要用string的特性,然后返回结果。
    具体的代码如下
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    class Solution {
    public:
    string minNumber(vector<int>& nums) {
    vector<string> strs;
    string res;
    for(auto num:nums){
    strs.push_back(to_string(num));
    }
    sort(strs.begin(),strs.end(),[&](const string a, const string b){
    return a + b < b + a;
    });
    for(auto str:strs){
    res += str;
    }
    return res;
    }
    };

    参加最多的活动

  • 这题虽然我没有找到相应题目,但是本质上错不多的,就是简单的sort排序问题,加上贪心算法
    如同leetcode1353题
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    class Solution {
    public:
    string minNumber(vector<vector<int>>& nums) {
    if(nums.size() == 0)return 0;
    sort(nums.begin(),nums.end(),[]const vector<int>&u,const vector<int>& v){
    return u[1] > v[1];
    });
    int count = 1;
    int x_end = nums[0][1];
    for(int i = 1;i < nums.size();++i){
    int start = nums[i][0];
    if(start > x_end){
    count++;
    x_end = nums[i][1];
    }
    }
    return count;
    }
    };

    选择题

    智能指针

    主要是share_ptr的用法
    四大智能指针

    虚函数

    纯虚函数和虚函数

http的发展

http

http的发展

  • http/0.9时代 纯文本格式、‘get’、响应之后连接就断了
  • http 1.0时代 增加head、post等新方法,增加响应状态码,引入头部,申请http版本号,引入content-Type
  • http 1.1时代 新增连接管理,允许持久连接、新增缓存控制和管理,允许响应数据分块,有利传输大文件
  • http 2时代 二进制协议,支持一个TCP连接发起多请求,利用hpack压缩头部,减少数据传输量,允许服务端主动推送数据
  • http 3时代 quic协议实现自己的丢包重传和拥塞控制

    Read More

图论

系统性去总结图论的知识点,有关于邻接矩阵等多方面知识点,有利于我巩固专业课上的知识点,也是自己认真去了解各项学习任务的进度。

Read More