两题都是在网上看到的baidu2007年前端笔试题,彼时我刚好写VB代码写的如火如荼热火朝天两眼发白四肢抽搐
题目1
按照格式:xxxx年xx月xx日xx时xx分xx秒动态显示时间
要求不足10的补0
这个题的解法多得泛滥。我花了点时间写了个练下手。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>test</title>
<script type='text/javascript'>Date.prototype.toSpecifiedFormat=function(){
var year=this.getFullYear();
var month=this.getMonth()+1;
var date=this.getDate();
var hours=this.getHours();
var minutes=this.getMinutes();
var seconds=this.getSeconds();
return year+'年'+
((month<10)?'0'+month:month)+'月'+
((date<10)?'0'+date:date)+'日'+
((hours<10)?'0'+hours:hours)+'时'+
((minutes<10)?'0'+minutes:minutes)+'分'+
((seconds<10)?'0'+seconds:seconds)+'秒';
}
setInterval(function(){
document.getElementById('time').value=new Date().toSpecifiedFormat();
},1000)
</script>
</head>
<body>
<input type='text' id='time' style='width:200px;' >
</body>
</html>
虽然题目比较简单,但是有些东西还是值得深究的,我需要找出一种高效率的实现方式。
题目2
编写一个方法:去掉一个数组的重复元素
这个准确说不是前端的题了,主要肯定是考察算法。N个元素的数组,最好的情况是只要遍历一次就能找出所有重复,这样时间复杂度是O(n).我的第一反应是为每个元素算hash,如果有重复的元素,肯定能找到冲突。如果在Java中,这太好办了,HashSet中有一个add方法,如果该方法返回的是false,那肯定是发现了重复的元素。但是在js中却没有这样现成的工具。但是可以考虑把js中的object来当做hash表使用。
Array.prototype.removeRepeat=function(){
var hashMap={};
for(var i in this){
if(typeof this[i]!=='function'){
if(hashMap[this[i]]===undefined)
hashMap[this[i]]=1;
else{
hashMap[this[i]]++;
}
}
}
var arr=[];
for(var i in hashMap){
if(hashMap[i]==1){
arr.push(i);
}
}
return arr;
}
var array=[1,null,'cad',3,'abg',3,null,'abg'];
var hashMap=array.removeRepeat();
console.log(hashMap);
如果该数组仅含有数字或字符串,那么可以用相对比较简单的处理:先把数组排序,再两两相邻比较,重复的就除去。基于这个想法,写了个如下的实现:
Array.prototype.removeRepeat=function(){
var arr=new Array();
for(var i in this){
arr[i]=this[i];
}
arr.sort();
for(var i=0;i<arr.length;i++){
var item=arr[i];
for(var j=i+1;j<arr.length;j++){
if(item===arr[j]){
arr.splice(j--,1);
}
}
}
return arr;
}
var array=[1,5,'cad',3,4,'abg',2,3,5,'gba','abg'];
var arr=array.removeRepeat();
console.log(arr);
分享到:
相关推荐
12年5月份的百度前端笔试题,看你的距离在哪里。
百度2016校园招聘 前端笔试题(1).pdf
前端笔试题整理(附答案)2021 pdf.pdf
005t百度2010校园招聘 web前端开发笔试题005t百度2010校园招聘 web前端开发笔试题
2011百度暑期实习生招聘笔试题-web前端开发,有部分答案
百度校园招聘笔试题-WEB前端工程师-电子科技大学(第三套题)
百度面试笔试题智能云前端.docx百度面试笔试题智能云前端.docx
包括了网上整理的所有html,css,javascript的笔试面试题,以及腾讯,百度,人人的笔试面试题~对应聘前端的童鞋非常有帮助~
百度2018校招Web前端工程师笔试题(第一批).pdf
百度校园招聘笔试题-WEB前端工程师-电子科技大学.pdf 百度校园招聘笔试题-市场部.doc 百度校园招聘笔试题-搜索研发类.pdf 百度校园招聘笔试题-研发工程师.pdf 百度校园招聘笔试题-网络工程师电子科技大学.doc 百度...
2021阿里前端面试题-第二期
百度前端研发笔试卷.pdf 百度大数据云计算研发笔试卷.pdf 百度安全研发笔试卷.pdf 百度研发工程师深圳.pdf 美团校园招聘研发笔试题.pdf 腾讯校园招聘技术类研发笔试题.pdf 阿里巴巴研发工程师A.pdf 阿里巴巴研发...
2009百度校园招聘笔试题-WEB前端工程师
回忆版.pdf百度人搜,阿里巴巴,腾讯华为小米搜狗笔试面试八十题.pdf百度校园招聘笔试面试题合集百度校园招聘笔试题web前端2013.pdf百度校园招聘笔试题产品2.pdf百度校园招聘笔试题产品经理2014.pdf百度校园招聘笔试...
2015校园招聘笔试题大合集,汇集百度、腾讯、阿里等多家大型互联网企业的面试题,非常具有参考价值。 内容包括: 360校园招聘2015届技术类笔试题.pdf 2015阿里巴巴校招研发在线笔试题.pdf 2015阿里校招系统...
百度校园招聘笔试面试题合集 深度学习、移动开发、系统研发、web前端
百度前端工程师面试
2015创新工场校招研发笔试题.pdf 2015小米校招技术类笔试题.pdf 360校园招聘2015届技术类笔试题.pdf 4399游戏2015校园招聘游戏开发类笔试题.pdf 人人网2015研发笔试卷B.pdf 人人网2015研发笔试卷C.pdf 搜狗2015校园...
百度校园招聘笔试题-WEB前端工程师-电子科技大学.pdf
(1912制作)百度笔试题面试题集总(总81页) 1912 CC++语言 笔试题面试题 软件开发测试