C++面经

链接下面是面经的链接

epoll相关的内容

  1. 说下ET和LT

  2. 什么是惊群效应

  3. 怎么避免惊群效应

  4. 早期内核怎么避免惊群效应?(锁)

笔试

  1. 笔试题目一:链接利用智能指针实现RAII

实在不会,在线放弃

  1. 笔试题目二:判断不同的类型
template<typename T> void printType(const T& a){
    if(typeid(a)==typeid(int)){
        std::cout<<"i am int"<<std::endl;
    }else{
        std::cout<<"i am others"<<std::endl;
    }
}

  1. 笔试题目三:二叉树的中序遍历
// 构造函数
struct Tree{
    int value;
    Tree *left;
    Tree *right;
    Tree():value(0),left(nullptr),right(nullptr){};
    Tree(int v):value(v),left(nullptr),right(nullptr){};
    Tree(int v,Tree *left,Tree *right):value(v),left(left),right(right){};
};
// 递归遍历
void binaryTree(Tree * t){
    // 边界
    if(t==nullptr) return;
    // 左边
    binaryTree(t->left);
    // 中间
    std::cout<<t->value<<std::endl;
    // 右边
    binaryTree(t->right);
}
// 非递归遍历
// 左中右进栈
void binaryTree2(Tree *t){
    if(t==nullptr) return;
    stack<Tree*> treeStack;
    while(t!=nullptr||!treeStack.empty()){
        // 放入左边
        while(t!=nullptr){
            treeStack.push(t);
            t=t->left;
        }
        // 弹出
        t=treeStack.top();
        treeStack.pop();
        cout<<t->value<<endl;
        // 转向右边
        t=t->right;
    }

}
全部评论

相关推荐

缒梦&独舞:这家公司是这样的,去年给我实习offer了,不过也是面着玩儿的,他周六还要去做公益志愿活动
点赞 评论 收藏
分享
评论
2
5
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务