首页 > 美团点评移动端(前端)提前批一面面经
头像
Red_Ferrari
编辑于 2021-07-28 22:59
+ 关注

美团点评移动端(前端)提前批一面面经

介绍部门概况,自我介绍

JS

JS有哪些对象类型

JS垃圾回收机制

JS有几种继承方式

TS有哪些特点

Vue

Vuex是什么

v-for和v-if的含义

Vue如何实现双向绑定

操作系统

进程之间有哪些通信方式:

答了消息队列 信号量 信号 共享内存 套接字 忘了管道、具名管道

进程的调度策略:

答了 先到先服务 优先级 时间片轮转,承认自己是背的,没学过操作系统

还有 短作业优先 高响应比优先 多级队列 多级反馈队列

你知道I/O吗?

不知道

计算机网络

HTTP与HTTPS 区别

HTTP为什么要经过 TIME-WAIT

TCP拥塞处理

跨域有哪些方法

数据库

数据库用了什么数据结构:

B+ 树,但背的不太好,没说出来B+树通过链指针,方便进行范围查询

事务隔离级别有哪些:

承认数据库没背好,只说出来读提交

实际有读未提交 读提交 可重复读 串行化

手撕算法

二叉树中和为某一值的路径

给你二叉树的根节点 root 和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。

叶子节点 是指没有子节点的节点。

示例 :

img

输入:root = [5,4,8,11,null,13,4,7,2,null,null,5,1], targetSum = 22
输出:[[5,4,11,2],[5,8,4,5]]

选择DFS算法保存路径

/**
 * Definition for a binary tree node.
 * function TreeNode(val) {
 *     this.val = val;
 *     this.left = this.right = null;
 * }
 */
/**
 * @param {TreeNode} root
 * @param {number} sum
 * @return {number[][]}
 */
var pathSum = function(root, sum) {
    let res = [];
    let path = [];
    function dfs(root, sum) {
        if (!root) {
            return;
        }
        sum -= root.val;
        path.push(root.val);
        if (!root.left && !root.right) {
            if (sum == 0) res.push([...path]);
        }
        if (root.left) dfs(root.left, sum);
        if (root.right) dfs(root.right, sum);
        path.pop();
    }
    dfs(root, sum);
    return res;
};

反问

更多模拟面试

全部评论

(2) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

热门推荐