面试题剖析-----(1) 字节跳动面试题剖析
-
第一题:
- a选项 ul只能嵌套li
- b选项 a标签不能多重嵌套
- c选项 dl标签后面只能跟dt
- d选项 ol标签后面只能跟li
-
第二题:
- HTML5新增的表单元素有:datalist,keygen,output
-
第三题:
mailto后面加地址
<a href=”mailto:ming.zhou@nowcoder.com”>发送邮件</a>
-
第四题:
置换元素:
-
具有固有尺寸(intrinsic dimensions),浏览器根据其标签和属性决定显示内容的元素。
-
特征:在不使用css修饰时,元素的标签和属性也会影响元素的显示
常见的置换元素:
<img>、<input>、<textarea>、<select>、<object>
-
-
第五题:
background-attachment 有三个值,scroll是默认值,背景图像会随着页面其余部分的滚动而移动。 fixed当页面的其余部分滚动时,背景图像不会移动。 inherit规定应该从父元素继承 background-attachment 属性的设置。
-
第六题:
display: none;//不为被隐藏的对象保留其物理空间; visibility:hidden;//所占据的空间位置仍然存在,仅为视觉上的完全透明;
要注意区分
-
第七题:
- IE盒子模型的范围包括margin、border、padding、content,和w3c盒子模型不同的是,IE盒子模型的content部分包含了padding和border
- w3c盒子模型的范围包括margin、border、padding、content,并且content部分不包含其他部分
- 总结:W3C的盒模型方式被称为“content-box”,IE的被称为“border-box”,使用box-sizing: border-box;就是为了在设置有padding值和border值的时候不把宽度撑开
-
第八题:
- 对于定位来说除了相对定位,其他的定位都会导致元素脱离文档流
- float 浮动也会导致元素脱离文档流
-
第九题:
text-transform:capitalize//是首字母大写 text-transfrom:lowercase//是全部字母为小写 text-transfrom:uppercase//是全部字母为大写 font-weight: bold;//字体为粗体
-
第十题:
假设总共100个新闻,那么真实新闻为98个,虚假新闻为2个,检验为真实的新闻 总个数为真实的检验为真实的 和虚假的检验为真实的 之和:98x(1-2%)+2x5%=96.14个,其中检验为真实的真实新闻个数即是真实的检验为真实的 个数:98x(1-2%)=96.04个,所以其真实概率为96.04/96.14=0.9989…
内容涉及概率论,不会莫慌。
-
第十一题:
因为是最后拿的赢,所以先将石子总数变为偶数。之后,和小条拿一样的就可以了
-
第十二题:
- Http协议所使用的运输层协议是TCP
- Https的端口是443
- TCP注重传输数据的质量,UDP注重数据传输的速度
- 传输层提供端到端的可靠报文传递和错误恢复
-
第十三题:
SQL数据库的东东,借鉴了解析:
正确答案 select * from toutiao_tb where title like ‘%cv%’ and type=1; -
第十四题:
- 进程是资源分配的基本单位
- 线程是资源调度的基本单位
-
第十五题:
使用FIFO算法,当进程分配到的页面数增加时,缺页中断的次数可能增加也可能减少
-
第十六题:
不稳定:快选堆希
稳 定:插冒归基
算法详情 -
第十七题:
在js中,定义了两个同名函数后,后面的函数会覆盖前面定义的函数。结合这道题来说,由于函数声明提升,所以函数声明会提前,由于存在同名函数,后面的add函数将覆盖第一个add函数,所以两次调用add()返回的值是相同的。也就是y,z都为4
-
第十八题:
对于变量a来说,它是一个局部变量。函数结束后它的作用域会消失。因此,会报错
对于变量b来说,它没有通过var操作符声明,因此它是个全局变量(在严格模式下也会报错)。
-
第十九题:
页面有一个按钮button id为 button1,通过原生的js如何禁用:
// 第一种解决办法 document.getElementById("button1").disabled = true; // 第二种解决办法 document.getElementById("button1").setAttribute(“disabled”,”true”);
-
第二十题:
css里面的background-color放在js里面要使用驼峰写法即是 backgroundColor
-
第二十一题:
js 代码:
var first = readline() var second = readline() function re(str, start, leng) { var s = str.substr(start, leng) s = s.split('').reverse().join('') var tou=str.slice(0,start+leng) var wei=str.slice(start+leng,str.length) first = tou.concat(s,wei); } for(var i=0;i<second;i++){ var arr = readline().split(' '); var start = parseInt(arr[0]); var leng = parseInt(arr[1]); re(first, start, leng) } print(first)
-
第二十二题:
分析:
1.首先判断一张cd可以容纳几首歌(n)
2.判断给出的歌曲数n1与n的大小
3.如果n大,直接判断n1是否能被13整除,能的话,cd数++;如果n1大,就需要判断能否被13整除,能的话,n-1;然后cd数=n1/n,可以判断是否有余数,有的话cd数+1;
代码:
while (line = readline()) { var arr = line.split(' ') var n = parseInt(arr[0]), s = parseInt(arr[1]), ll = parseInt(arr[2]) var cd = 1, count = 0, l = ll, r = Math.floor((ll - s) / (s + 1) + 1) while (n > 0) { if (l >= s) { if (((count + 1) % 13 !== 0)) { if (count === 0) { l -= s; } else { l -= (s + 1); } count++ n-- } else if ((l > (2 * s + 2)) && (n >= 2) || ((n < r) && (l > s + 1)) && (cd !== 1)) { l -= (2 * (s + 1)); count = count + 2 n -= 2 } else { cd = cd + 1 count = 0 l = ll } } else { cd = cd + 1 count = 0 l = ll } } console.log(cd) }