前端面试高频编码题

429 阅读1分钟

2022年初的求职以魔幻开场,大厂裁员消息接连不断,面试过程中时常会遇到各种问题导致offer失败,作为应聘者我们能做的就是保持自身的竞争力,提高多方面能力以保证自己能够从激烈的竞争中脱颖而出。

近一段时间我面了多家互联网公司(包括阿里、头条、美团等),总结整理了在前端面试中比较容易遇到的编码题,既是对自己这段求职经历的总结,也希望能够帮助大家找到心仪的工作。

  1. 将多维数组拍平,即Array.prototype.flat方法的实现
  2. 给定一个一维数组,根据pid和id的对应关系将其转化为tree形结构
// 输入
const jsonData = [{
    "id": "1",
    "pid": "0",
    "name": "第一战区"
}, {
    "id": "4",
    "pid": "1",
    "name": "第1军"
}, {
    "id": "5",
    "pid": "4",
    "name": "第1师"
}]

// 输出
const jsonData = [{
    "id": "1",
    "pid": "0",
    "name": "第一战区",
    "children": [
        {
            "id": "4",
            "pid": "1",
            "name": "第1军",
            "children": [
                {
                    "id": "5",
                    "pid": "4",
                    "name": "第1师"
                }
            ]
        }
    ]
}]
  1. 深拷贝的实现(包括number string array object多种数据类型)
  2. 二叉树的最近公共祖先
  3. 移除k位数字(leetcode 402)
  4. LRU缓存设计实现(leetcode 146)
  5. 三数之和
  6. 二叉树的右视图
  7. 两数之和(LeetCode 1)
  8. 遍历二叉树

持续更新中。。。。