字节前端二面面经

前面问了一些操作系统和底层原理的知识,记不得了,当时压根没复习这一块,当时一脸懵逼

  • 前端学习了几年了,如何学习的前端

  • 大小端存储

  • 有一个已经上线的项目,项目中出现了一个bug,如果在不影响用户的情况下实现项目的bug的修复,也就是重新部署

  • TCP三次握手里有什么重要信息(确认序号等)

  • 从输入url到渲染出页面经过了什么过程

  • DNS有几种查询方式

  • 什么时候用递归查询,什么时候用迭代查询

  • 说明一下你对脚手架的理解

  • websocket

  • react和Vue有什么区别

  • mysql有几种索引

  • 算法:给了一张无向图(数据结构),求最短路径,1-5点之间的最短路径,要求打印出中间经过的路径。

img

 const head = {
    1: [{
        path: 2,
        value: 2
    }, {
        path: 3,
        value:4
    }, {
        path: 5,
        value: 10
    }],
    2: [{
        path: 1,
        value: 2
    }, {
        path: 3,
        value: 3
    }, {
        path: 5,
        value: 7
    }],
    3: [{
        path: 1,
        value: 4
    }, {
        path: 2,
        value: 3
    }, {
        path: 4,
        value: 4
    }, {
        path: 5,
        value: 3
    }],
    4: [{
        path: 3,
        value: 4
    }, {
        path: 5,
        value: 5
    }],
    5: [{
        path: 1,
        value: 10
    } , {
        path: 2,
        value: 7
    }, {
        path: 3,
        value: 3
    }, {
        path: 4,
        value: 5
    }]
}

let minValue = Number.MAX_VALUE
let minPaths = []

const func = (path, val, target, arr) => {
    if(path === target){
        if(minValue>val){
            minValue = val;
            minPaths = arr
        }
        return
    }
    const paths = head[path]
    for(let i = 0;i<paths.length;i++) {
        if(arr.indexOf(paths[i].path)=== -1){
            func(paths[i].path, paths[i].value + val, 
                 target, [...arr, paths[i].path])
        }
    }
}

const start = 2;
const end = 5

const fun = (start, end) => {
    func(start, 0, end, [start])
}

fun(start, end)

console.log(minPaths)

其他的记不清楚了,就记得这些了

#实习##面经##字节跳动##前端工程师#
全部评论
楼主你好,请问你有看到讲DNS比较详细的博客什么的吗,我搜到的都不太全……(万分感谢)
1 回复
分享
发布于 2021-03-01 23:49
最近前端面经挺多,祝楼主顺利上岸
点赞 回复
分享
发布于 2021-02-23 10:06
阅文集团
校招火热招聘中
官网直投
上线项目出现问题的那道题,楼主你是怎么回答的,我学习学习
点赞 回复
分享
发布于 2021-02-23 14:30
已经上线的项目如何重新部署你是怎么答得
点赞 回复
分享
发布于 2021-02-27 08:25

相关推荐

3 46 评论
分享
牛客网
牛客企业服务