(转)2017网易前端笔试题

偶尔看到的文章,很喜欢就转过来了,若有侵权请告知删除。
原文地址:https://blog.csdn.net/sunday0904/article/details/77184077
(原文的解析还有文字更详细,原文作者编程题为java代码,此处用的是js代码)

单选题:

1.下列哪些不是伪元素选择器:
A. first-line
B. before
C. first-letter
D. behind
参考:D(应该是after)
2.下列哪些不属于HTML input元素种类:
A. search
B. range
C. datetime
D. bool
参考:D
3.二分查找算法不能在下面哪个数据结构中使用?
A. sorted linkedlist
B. sorted lineararray
C. sorted binary trees
D. sorted pointerarray
参考:A
4.已知一棵高度为4的完全二叉树的第4层(设根为第1层)有3个叶结点,则该完全二叉树第3层的叶结点个数是
A. 1
B. 3
C. 2
D. 4
参考:C
完全二叉树:若设二叉树的深度为h,除第 h 层外,其它各层 (1~h-1) 的结点数都达到最大个数,第 h 层所有的结点都连续集中在最左边,这就是完全二叉树。
5.以下代码的执行结果是什么?

setTimeout(function() {
    console.log(1);
}, 100)
setTimeout(function () {
    console.log(2);
}, 0)
console.log(3);

A. 1,2,3
B. 2,1,3
C. 3,2,1
D. 2,3,1
参考 :C
js是单线程的,setTimeout只是将函数放入队列,任然要等待空闲的时候再执行,即使时间设置为0
6.下面不属于TCP协议拥塞控制部分的是()
A. 快速重传
B. 带外数据
C. 慢启动
D. 快速恢复
参考:B
TCP的拥塞控制由4个核心算法组成:“慢启动”(Slow Start)、“拥塞避免”(Congestion voidance)、“快速重传 ”(Fast Retransmit)、“快速恢复”(Fast Recovery)。
7.HTML5中关于section元素使用正确的是()
A. 通常将section元素用做设置样式的页面容器
B. 在没有标题的内容区块应该使用section元素
C. 推荐使用section元素代替article元素、aside元素、或nav元素
D. 如果你想把一块内容分成几块时,应该使用section元素
参考:D
8.对算法估计空间复杂度,关注的是()
A. 程序代码占用的空间
B. 程序运行占用的总空间
C. 程序使用的辅助空间
D. 程序使用的数据空间
参考:C
空间复杂度(Space Complexity)是对一个算法在运行过程中临时占用存储空间大小的量度。一个算法在计算机存储器上所占用的存储空间,包括存储算法本身所占用的存储空间,算法的输入输出数据所占用的存储空间和算法在运行过程中临时占用的存储空间这三个方面。临时占用的存储空间即程序使用的辅助空间。
9.var arr = []
typeof arr 的结果是:
A. array
B. function
C. object
D. undefined
参考:C
5种简单数据类型(也称基本数据类型):Undefined、Null、Boolean、Number、String
1种复杂数据类型:Object(基本上除了上述5种,其余都是Object)
10.JavaScript中下面选项关于this描述正确的是()
A. 在使用new实例化对象时,this指向这个实例对象
B. 在函数定义时,this指向全局变量
C. 当对象调用函数或者方法时,this指向这个对象
D. 在浏览器下的全局范围内,this指向全局变量
参考:A/C
11.某单链表中最常用的操作是在最后一个元素之后插入一个元素和删除链表中给定的元素,则下列选项正确的是()
A. 若仅有头指针,则插入操作及删除操作均是O(n)的
B. 既有头指针又有尾指针,则插入操作及删除操作均是O(1)的
C. 增加尾指针既能提升插入操作的效率,也能提升删除操作的效率
D. 既有头指针又有尾指针,则插入操作及删除操作均是O(n)的
参考:A (按照他的解释觉得D也是对的)
查找操作和删除操作都需要遍历链表,移动指针来确定元素位置,所以时间复杂度是O(n),是否有尾指针没有影响。不查找,直接操作的时间复杂度是O(1)。所以时间复杂度是O(n)。
12.以下代码的执行结果是什么?

var string = 'string';
var number = 0;
var bool = true;
console.log(number || string);
console.log(number && string);
console.log(bool || number);
console.log(bool && number);

A. ‘string’, 0, true,0
B. ‘string’, true,0, 0
C. ‘string’, ‘string’,true, 0
D. ‘string’, 0, true,true
参考:A
13.以下意图哪个是用来描述ADAPTER(适配器)?()
A. 定义一个用于创建对象的接口,让子类决定实例化哪一个类
B. 将一个请求封装为一个对象,从而使你可用不同的请求对客户端进行参数化,对请求排队或记录请求日志,以及支持可撤销的操作
C. 将一个类的接口转换成客户希望的另一个接口,本模式使得原本由于接口不兼容而不能一起工作的那些类一起工作
D. 表示一个作用于某对象结构中的各元素操作,他使你可以在不改变各元素的类的前提下作用于这些元素的新操作
参考:C
适配器模式(Adapter)是将一个类(对象)的接口(方法或属性)转化成客户希望的另外一个接口(方法或属性),适配器模式使得原本由于接口不兼容而不能一起工作的那些类(对象)可以一些工作。速成包装器(wrapper)。
14.一个栈的入栈顺序是1,2,3,4,5,则栈的不可能输出顺序是:
A. 12345
B. 54321
C. 43512
D. 45321
参考:C
栈有两种原则,“先进先出”和“先进后出”。
A.先进先出,12345按顺序入栈,在分别出栈
B.先进后出,12345按顺序入栈,在分别出栈
C.先进后出,1不可能在2之前先出栈
D.先进后出,1234入栈,4出栈,5入栈,5321出栈
15.下面关于进程和线程说法不正确的是?
A. 线程是进程的一个实体,可作为系统独立调度和分派的基本单位
B. 线程可以通过相互之间协同来完成进程所要完成的任务
C. 一个进程中多个线程可以并发执行
D. 线程之间不共享进程中的共享变量和部分环境
参考:D
进程之间不共享变量和部分环境,要通过通信来实现,但是线程可以共享。
16.从1000000000000个书中选择最小的20个数,用以下那种排序算法比较方便?
A. 归并排序
B. 快速排序
C. 插入排序
D. 堆排序
参考:D
17.JavaScript中window对象的子对象不包含以下哪个对象?
A. document
B. self
C. history
D. message
参考:D
window、self、window.self三者是等价的。
window的主对象主要有如下几个:
document frames history location navigator screen
18.将一个整数序列整理为升序,两趟处理后序列变为10,12,21,9,7,3,4,25,则采用的排序算法可能是:
A. 插入排序
B. 快速排序
C. 选择排序
D. 堆排序
参考:C (个人觉得是B,插入排序相当于抽牌,从第二张不停往前移,直到前一张牌比自己小,10,12都比21小,所以为B)
19.下面可以匹配
<img src=”http://image.163.com”></img>
的正则表达式是?
A. <img src=”[.”]></img>
B. <img src=”[^”]
></img>
C. <img src=”[.”]”></img>
D. <img src=”[^”]
”></img>
参考:D
20.某系统中有12台设备,K个进程竞争使用,每个进程最多需要4台设备,该系统可能会发生死锁的K的最小值是()
A. 3
B. 5
C. 4
D. 6
参考:C

编程题:(此处为js参考代码,java代码请参考原文)

1、题目描述:
给出n阶方阵里所有数,求方阵里所有数的和。
输入描述:
3
1 2 3
2 1 3
3 2 1
输出:
18

var count=0;  
function swap(arr,i,j) {  
    if(i!=j) {  
        var temp=arr[i];  
        arr[i]=arr[j];  
        arr[j]=temp;  
    }  
}
function show(arr) {  
    document.write(arr+"<br />");  
}
function fn(arr,n) {     //为第n个位置选择元素  
        for(var i=n;i<arr.length;i++) {  
            swap(arr,i,n);
            if(n+1<arr.length-1) //判断数组中剩余的待全排列的元素是否大于1个  
                fn(arr,n+1); //从第n+1个下标进行全排列  
            else {
                show(arr); //显示一组结果  
                count++;
            }
            swap(arr,i,n);  //换回来,恢复原来的数组
        }  
    }
function perm(n) { 
    var arr = []
    for(let i =1;i<=n;i++){
        arr.push(i)
    }
    fn(arr,0)  
    console.log(count)
}  
perm(5);    //count刚好为5!,证明正确,至于和只需要count*5!

2.题目描述:
如果一个01串任意两个相邻位置的字符都是不一样的,我们就叫这个01串为交错串,例如1,10101,0101010都是交错01串。小易现在有一个01串s,小易想找出一个最长的连续子串,并且这个子串是一个交错01串。小易需要你帮帮忙求出这样的子串的长度是多少。
输入描述:
输入包括字符串s,s的长度是length(1≤length≤50),字符串中只包括0和1
输出描述:
输出一个整数,表示最长的满足要求的子串长度。
示例1
输入:
111101111
输出:
3

function fn_01(str){
    let re = /1{0,1}(01)+0{0,1}/g
    let str_01 = str.match(re)
    console.log(str_01)
    let index=0;
    if(str_01.length!==0){
        for(let i=0;i<str_01.length;i++){
            index = str_01[index].length>=str_01[i].length? index : i
        }
        return str_01[index].length
    }else{
        return 1
    }
    
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,386评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,142评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,704评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,702评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,716评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,573评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,314评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,230评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,680评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,873评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,991评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,706评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,329评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,910评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,038评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,158评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,941评论 2 355

推荐阅读更多精彩内容