网易2020校招笔试- 前端开发工程师(提前批)

时长:120分钟 总分:100分

143浏览 0人已完成答题

题型介绍
题型 单选题 填空题 简答题
数量 10 4 2
1.
有一类二叉树用三叉链表来存储的时候除了带有指向左右孩子节点的两个指针,还有...
问题详情

有一类二叉树用三叉链表来存储的时候除了带有指向左右孩子节点的两个指针,还有指向父节点的指针,那么这样一棵二叉树有2个节点,那么有多少指针指向NULL(注:根节点的父指针指向NULL,对于不存在的节点表示为NULL)?





2.
判断一个数组或序列是正序,倒序还是乱序,需要我们将这个数组完整的遍历一遍通...
问题详情

判断一个数组或序列是正序,倒序还是乱序,需要我们将这个数组完整的遍历一遍通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应的位置并插入的排序算法是( )




3.
序列交换
问题详情

小易给你一个包含n个数字的数组。你可以对这个数组执行任意次以下交换操作:
对于数组中的两个下标i,j(1<=i,j<=n),如果为奇数,就可以交换a_ia_j

现在允许你使用操作次数不限,小易希望你能求出在所有能通过若干次操作可以得到的数组中,字典序最小的一个是什么。
4.
序列维护
问题详情

小易在维护数据的时候遇到一个需求,具体来说小易有一系列数据,这些数据了构成一个长度为n的数字序列,接下来小易会在这个序列上进行q次操作。
每次操作有一个查询的数字x,小易需要将序列数据中所有大于等于x的数字都减一,并输出在本次操作中有多少个数字被减一了。
小易犯了难,希望你能帮帮他。
5.
最大公约数
问题详情

小易学习了辗转相除法之后,就开始实践这个算法在求解最大公约数上。
牛牛给小易出了一道不同寻常的求解最大公约数: 求解a和b的最大公约数,但是a和b的范围特别大。
小易遇到了困难,向聪明的你寻求帮助,希望你能帮帮他。
6.
最大最小值
问题详情

小易给定了一个长度为n的数字序列,对于每一个小易希望能求解出所有长度为k的连续子序列的最大值中的最小值。
7.
下面关于HTTP协议的说法错误的是( )
问题详情




8.
下面代码的输出是: const arr = ...
问题详情

下面代码的输出是:
const arr = []
const testObj = {}
console.log(arr === "")
console.log(arr == "")
arr.toString = () => 1
console.log(arr === 1)
console.log(arr == 1)
arr.valueOf = () => 2
console.log(arr == 2)
arr.valueOf = () => testObj
console.log(arr == testObj)





9.
下面代码的输出是: let a = 0 const obj = { ...
问题详情

下面代码的输出是:
let a = 0
const obj = {
    a: 1,
    b: function() {
    console.log(this.a)
    }
}
const obj1 = {
    a: 2
}
const fun = obj.b
fun() 
fun.apply(obj) 
fun.bind(obj1).apply(obj) 
const fun1 = fun.bind(obj1)
new fun() 




10.
下面代码的输出是: function func() {...
问题详情

下面代码的输出是:
function func() {
    this.name = "Hellen"
}
console.log(typeof func.prototype)
func.prototype.getName = function() {
    console.log(this.name)
}
const Obj = {}
Obj.__proto__ = func.prototype
func.call(Obj)
if (Obj.getName) {
    console.log("yes")
    Obj.getName()
}
console.log("end")





11.
Funtion.prototype的原型链最终指向的哪?
问题详情




12.
下面代码的输出是: function func(source) {&nb...
问题详情

下面代码的输出是:
function func(source) { 
    var target = {} 
    for (var key in source) { 
        if (Object.prototype.hasOwnProperty.call(source, key)) {
             if (typeof source[key] === 'object') { 
                target[key] = func(source[key]) 
             } else { 
                target[key] = source[key] 
             }
        } 
    } 
    return target 
}
var a = { a1: "a1", a2: { b1: "b1", b2: "b2" }, a3: undefined, a4: null, a5: 1 }
var b = func(a) 
console.log(b)





13.
<canvas width="250" height="250"&g...
问题详情

<canvas width="250" height="250"></canvas>,有个矩形长20px,高10px,css中width:250px,height:500px  请问这个矩形渲染出来的面际是多少?




14.
下列布局在页面上的宽度比是多少? // css .fl...
问题详情

下列布局在页面上的宽度比是多少?
// css
.flex {
display: flex
width: 200px
height: 100px
}
.left {
flex: 3 0 50px
background: red
}
.right {
flex: 2 0 100px
background: blue
}
// html
<div class="flex">
    <div class="left"></div>
    <div class="right"></div>
</div>




15.
如下图所示,请实现如下功能,当鼠标移到黑底客户服务区块后,出来白底卡片内容...
问题详情

如下图所示,请实现如下功能,当鼠标移到黑底客户服务区块后,出来白底卡片内容,鼠标移出后,卡片内容消失,并且当鼠标在白色部分上移动时白色框不能消失。

要求实现该功能完整的htmlcssjs代码

 

参考:三角形图标的样式为 trangle-down如下:

.triangle-down{
width:0;
height:0;
border-left:5pxsolidtransparent;
border-right:5pxsolidtransparent
border-top:5pxsolidblack
}
16.
设计一个uniqueify函数,可以根据用户自定义的 重复判定规...
问题详情

设计一个uniqueify函数,可以根据用户自定义的 重复判定规则 进行数组元素去重,举个例子:
//情况一:
letarr0 = [1,1,1,0,5,6]
uniqueify(arr0)
//输出:[1,0,5,6]

//情况二:
letarr1 = [
    {id: 1, name:'xx'},
    {id: 1, name:'xx'},
    {id: 2, name:'xx'},
    {id: 1, name:'xx'},
    {id: 1, name:'xx'}
]
uniqueify(arr1, a=>a.id)//假如这里的去重规则依据为id
//输出:
[
    {id: 1, name:'xx'},
    {id: 2, name:'xx'}
]

//情况三:
letarr2 = [
    {name:'xx',sex:'male'},
    {name:'xx',sex:'female'},
    {name:'xx',sex:'male'},
    {name:'aa',sex:'male'},
    {name:'aa',sex:'male'}
]
uniqueify(arr2, a=>(a.name+a.sex))//假如这里的去重规则依据为名字和性别均相同,才算是相同
//输出:
[
    {name:'xx',sex:'male'},
    {name:'xx',sex:'female'},
    {name:'aa',sex:'male'}
]