美团前端二面面经

发面经,攒人品。。(二面面试官很有耐心,引导的很好。。点赞)

1. 二叉树的中序遍历实现

// Way1. 栈结构实现
function inOrder(root) {
    var res = [];
    var stack = [];
    var p = root;
    while (p || stack.length > 0) {
        while (p) {
            stack.push(p);
            p = p.left;
        }
        p = stack.pop();
        res.push(p.node);
        p = p.right
    }
    return res
}

// Way2. 递归实现
function inOrderCore(root, res) {
    if (!root) {
        return 
    }
    inOrderCore(root.left, res);
    res.push(root.node);
    inOrderCore(root.right, res);
}

function inOrder2(root) {
    var res = [];
    inOrderCore(root, res);
    return res;
}

2. 分析递归算法的时间复杂度

3. 二叉树的节点为N,那么二叉树的深度为多少,怎么推导的。。(logN)

4. 算法实现二叉树深度

function dfs(root) {
    if (!root) {
        return 0
    }else {
        var leftDepth = dfs(root.left);
        var rightDepth = dfs(root.right);
        var childDepth = leftDepth > rightDepth ? leftDepth : rightDepth;
        return childDepth + 1
    }
}

5. 闭包和JS垃圾回收机制

6. 利用闭包实现按列升降序排序函数(0表示升序,1表示降序)

function listSort(testArr, str) {
    return function (sortWay) {
        // 比较
        if (sortWay) {
            testArr.sort((a, b) => {return b[str] - a[str]})
        }else {
            testArr.sort((a, b) => {return a[str] - b[str]})
        }
        return testArr
    }
}

var testArray = [{name: 1,age: 18,mobile: 123},{name: 2,age: 19,mobile: 234},{name: 3,age: 20,mobile: 456}];

console.log(listSort(testArray, "name")(1));

7. ES6了解哪些

8. Generator的\*表示什么意思,如果在yield后加\*号表示什么

9. 介绍一下BFC

#美团##秋招##面经##前端工程师#
全部评论
所以楼主那个时间复杂度是多少呢
点赞 回复 分享
发布于 2019-09-10 16:24
请问楼主二面问项目吗
点赞 回复 分享
发布于 2019-09-10 12:05
是现场面还是视频啊?投的哪里?
点赞 回复 分享
发布于 2019-09-01 22:25
中序遍历不需要先封装一个树?会当场让你测试一下嘛?
点赞 回复 分享
发布于 2019-08-29 12:43
一面面完什么时候会有下一面呀
点赞 回复 分享
发布于 2019-08-29 12:41
收到三面通知了吗
点赞 回复 分享
发布于 2019-08-29 12:32

相关推荐

04-26 13:09
已编辑
门头沟学院 前端工程师
50min项目重难点?路由懒加载?不变化路由更改页面怎么实现?vue性能优化?如果更新一个组件,只让这个组件重新渲染怎么做?deepseek底层模型?底层架构?怎么微调?如何用更少成本实现更好训练效果?组件通信方式?vuex包含哪些参数?具体使用方法?数据存储形式?数组操作方法?增删改查有哪些?split都传哪些参数?怎么实现查?filter和find区别?排序的理解?快排的具体实现过程?第二次的基准怎么设置?手撕是写多选功能,自己设计数据结构,实现点击父节点全选子节点全选,全选子节点父节点自动勾选等等最汗流浃背坐立难安的一集,这次面试约的图书馆的研讨室,结果空间巨小,封闭空间在近期的南京30度高温里巨热,椅子座位很小,坐着容易往下滑,但是椅子又高,坐着脚着不了地,特别痛苦,面试时一直反复滑下来 坐上去 还在被面试官拷打面试体验的话,面试官人很好,快手就像传说中的人好业务水平高,一个温柔爱笑有点小幽默的姐姐,基本是根据简历上写的提问。场景题一直在引导提示我写,但是我实在是太菜了,从一开始就滑跪,一般别的厂滑跪就结束了,快手面试官还在一直从各个角度引导提示我继续,诚惶诚恐,但我太菜感觉实在对不起面试官的时间😂这周五天要面7场,发面经攒人品~面经有帮助的话麻烦送朵花~我想兑换牛客的周边
查看17道真题和解析 牛客创作赏金赛
点赞 评论 收藏
分享
评论
3
56
分享

创作者周榜

更多
牛客网
牛客企业服务