腾讯QQ空间web前端一面

  1. 介绍一下async、await
  2. 前端工程化方面做了哪些东西
  3. 直播点赞按钮的冒泡功能如何实现
  4. 描述一下React的虚拟dom,为什么要用虚拟dom
  5. Jquery选择器怎么实现
  6. 说说类的创建、继承和闭包。
  7. 说一下你对generator的了解?
  8. 如何判断一个对象是否是数组对象?
  9. 有做过移动端的开发吗?如何实现响应式的页面?
  10. 项目中遇到过哪些难点,怎么解决的
  11. 异步的处理方式,都是怎么处理的?
  12. 说到ES6是静态化导入的,而且不能分支导入,然后问AMD、CMD能够分支导入吗?
  13. 输入网址到网页呈现出来这个过程尽可能描述一下
  14. 我现在有一个数组[1,2,3,4],请实现算法,得到这个数组的全排列的数组,如[2,1,3,4],[2,1,4,3]。。。。你这个算法的时间复杂度是多少
  15. 项目中的权限是如何实现的
  16. form表单可以跨域么
  17. 你可以实现一个 JavaScript 的观察者模式吗?
  18. 说一下macrotask 和 microtask?
  19. 常见的排序算法有哪些,说说实现思路
  20. 举一些ES6对Function函数类型做的常用升级优化?
  21. 页面水平居中
  22. 如果说要展示一个十万的数据在移动端的网页上怎么做?
  23. 为什么用Vue。你觉得React和Vue的区别是什么?各自适合哪些场景?
  24. 写一个布局:要求:整体尺寸等于浏览器窗口的尺寸,设置最小高度和最小宽度
  25. position, absolute 和 fixed 区别
  26. 引入 JavaScript 脚本文件的使用使用到 script 标签,其中 defer/async 有什么区别?

编程题

  • 给定一个 完美二叉树 ,其所有叶子节点都在同一层,每个父节点都有两个子节点。二叉树定义如下:
struct Node {
  int val;
  Node *left;
  Node *right;
  Node *next;
}
  • 填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 next 指针设置为 NULL。

  • 初始状态下,所有 next 指针都被设置为 NULL。

示例 1:

输入:root = [1,2,3,4,5,6,7]
输出:[1,#,2,3,#,4,5,6,7,#]
解释:给定二叉树如图 A 所示,你的函数应该填充它的每个 next 指针,以指向其下一个右侧节点,如图 B 所示。序列化的输出按层序遍历排列,同一层节点由 next 指针连接,'#' 标志着每一层的结束。