IT关键词,面试知识问与答
二叉树遍历的三种方式?
遍历是指依次访问⼆叉树中的每个元素。有三种遍历⽅法,分别是前序遍历、
中序遍历和后序遍历。它们是按照访问根节点和⼦节点的先后顺序命名的。
• 前序遍历:先访问根节点,然后访问左⼦树,最后访问右⼦树;
• 中序遍历:先访问左⼦树,然后访问根节点,最后访问右⼦树;
• 后序遍历:先访问左⼦树,然后访问右⼦树,最后访问根节点。
php中单引号和双引号有什么区别?
单引号内部的变量不会执行
双引号会执行
如
$name = 'hello';
echo "the $name";
会输出 the hello
而如果是单引号
$name = 'hello';
echo 'the $name';
会输出 the $name
主要区别就是这个,其他的无所谓,看你自己喜欢了
时序图
1.什么是时序图
2.如何看懂时序图
3.时序图的作用
4.如何绘制时序图
分布式
一个业务分拆多个子业务,部署在不同的服务器上。
分布式是指将不同的业务分布在不同的地方。 而集群指的是将几台服务器集中在一起,实现同一业务。
集群
同一个业务,部署在多个服务器上。
小饭店原来只有一个厨师,切菜洗菜备料炒菜全干。后来客人多了,厨房一个厨师忙不过来,又请了个厨师,两个厨师都能炒一样的菜,这两个厨师的关系是集群。为了让厨师专心炒菜,把菜做到极致,又请了个配菜师负责切菜,备菜,备料,厨师和配菜师的关系是分布式,一个配菜师也忙不过来了,又请了个配菜师,两个配菜师关系是集群。
生产环境
开发->测试->上线,其中生产环境也就是通常说的真实环境。
消息队列
消息队列(Message Queue,简称MQ),从字面意思上看,本质是个队列,FIFO先入先出,只不过队列中存放的内容是message而已。
socket
我们经常把socket翻译为套接字,socket是在应用层和传输层之间的一个抽象层,它把TCP/IP层复杂的操作抽象为几个简单的接口供应用层调用已实现进程在网络中通信。
User-Agent
告诉HTTP服务器, 客户端使用的操作系统和浏览器的名称和版本。
索引
索引就像一本书的目录,目录越详细越容易定位具体页码。索引也是越详细就越容易定位具体数据。
索引越详细意味着索引自身的数据越多。
–最好的情况是如果那个列具有unique属性,那每一条数据就会有一个索引记录。
–最差的情况是所有的数据都一样,索引只有一条,这一条索引对应了所有的数据。
算法时间复杂度
一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中语句执行次数多,它花费时间就多。一个算法中的语句执行次数称为语句频度或时间频度。记为T(n)。
常数阶O(1),对数阶O(log2n)(以2为底n的对数),线性阶O(n),线性对数阶O(nlog2n),平方阶O(n2),立方阶O(n3),...,k次方阶O(nk),指数阶O(2n)。随着问题规模n的不断增大,上述时间复杂度不断增大,算法的执行效率越低。
设每条语句执行一次所需的时间均是单位时间,一个算法的时间耗费就是该算法中所有语句的频度之和。
算法空间复杂度
与时间复杂度类似,空间复杂度是指算法在计算机内执行时所需存储空间的度量。
1.算法程序所占的空间;
2.输入的初始数据所占的存储空间;
3.算法执行过程中所需要的额外空间。
log2n
LOG2(N)
相当于2的多少次方(立方)等于N
例:LOG2(8)=3
相当于,2的3次方等于8
OpenStack
OpenStack是一个开源的云计算管理平台项目,由几个主要的组件组合起来完成具体工作。OpenStack支持几乎所有类型的云环境,项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。OpenStack通过各种互补的服务提供了基础设施即服务(IaaS)的解决方案,每个服务提供API以进行集成。
经纬度
东西经,南北纬。
一纬度=110.94公里,北纬35度至49度=?公里南北。一经度=85.276公里,东经73度至96度=?公里东西。
DNS
DNS (Domain Name System 的缩写)的作用非常简单,就是根据域名查出IP地址。你可以把它想象成一本巨大的电话本。
举例来说,如果你要访问域名math.stackexchange.com,首先要通过DNS查出它的IP地址是151.101.129.69。
当我们通过在浏览器的地址栏中键入域名来访问某个网站时,浏览器将首先查找本地的DNS缓存是否拥有该域名所对应的IP地址。如果有,那么浏览器将尝试直接使用该IP地址访问该网站的内容。如果本地DNS缓存中没有该域名所对应的IP地址,那么它将向DNS发送一个请求,以获得该域名所对应的IP并添加到本地DNS缓存中。
组合和聚合
比如A类中包含B类的一个引用b,当A类的一个对象消亡时,b这个引用所指向的对象也同时消亡(没有任何一个引用指向它,成了垃圾对象),这种情况叫做组合,反之b所指向的对象还会有另外的引用指向它,这种情况叫聚合。
十六进制AF转为十进制
0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F
A是10,F是15。转为十进制,10*16+15*1 = 175
框架与库
库是解决某个问题而拼凑出来的一大堆函数与类的集合。
框架则是一个半成品的应用,直接给出一个骨架。写框架能提升自己的架构能力。
剖析别人框架的特点,写出属于自己的框架。
rem 与 px的区别
px:各个终端统一大小,简单明了,未尝不可!
rem:大屏幕显示大字体,小屏幕显示小字体,渐进增强视觉感。
冒泡的过程
事件冒泡的过程是:a --> div --> body 。a冒泡到div冒泡到body。
include、require的区别
incluce在用到时加载
require在一开始就加载
_once后缀表示已加载的不加载
include引入文件的时候,如果碰到错误,会给出提示,并继续运行下边的代码。
require引入文件的时候,如果碰到错误,会给出提示,并停止运行下边的代码。
dos系统与微软的关系
DOS=disk operating system, 磁盘操作系统
MS=MICRO SOFT 美国微软公司
MS-DOS是微软公司的磁盘操作系统
DOS(磁盘操作系统)除了微软的外,还有其他公司的产品。如DR-DOS、PC-DOS、ROM-DOS、FreeDOS等,但MS-DOS是最多人使用也是最实用的一种,不过现在基本上见到不其他公司的产品了,都被微软垄断了。
1980年,西雅图电脑产品公司(Seattle Computer Products)的一名24岁的程序员蒂姆·帕特森(Tim Paterson)花费了四个月时间编写出了86-DOS操作系统。1981年7月,微软以五万美元的代价向西雅图公司购得本产品的全部版权,并将它更名为MS-DOS。
最基本的MS-DOS系统由一个基于MBR的BOOT引导程序和三个文件模块组成。这三个模块是输入输出模块(IO.SYS)、文件管理模块(MSDOS.SYS)及命令解释模块。除此之外,微软还在零售的MS-DOS系统包中加入了若干标准的外部程序(即外部命令),这才与内部命令(即由解释执行的命令)一同构建起一个在磁盘操作时代相对完备的人机交互环境。
IT关键词,面试知识问与答的更多相关文章
- WCF入门教程:WCF基础知识问与答(转)
学习WCF已有近两年的时间,其间又翻译了Juval的大作<Programming WCF Services>,我仍然觉得WCF还有更多的内容值得探索与挖掘.学得越多,反而越发觉得自己所知太 ...
- Python面试快问快答,理论要的就是速度与精准,Python面试题No2
今天的面试题 第1题:python2和python3的range(100)的区别 range()函数的含义 range函数是一个用来创建算数级数序列的通用函数,返回一个[start, start + ...
- 当面试官问我ArrayList和LinkedList哪个更占空间时,我这么答让他眼前一亮
前言 今天介绍一下Java的两个集合类,ArrayList和LinkedList,这两个集合的知识点几乎可以说面试必问的. 对于这两个集合类,相信大家都不陌生,ArrayList可以说是日常开发中用的 ...
- 最近找java实习面试被问到的东西总结(Java方向)
时间,就是这么很悄悄的溜走了将近两个年华,不知不觉的,研二了,作为一个一般学校的研究生,不知道该说自己是不学无术,还是说有过努力,反正,这两年里,有过坚持,有过堕落,这不,突然间,有种开窍的急迫感,寻 ...
- linux驱动工程面试必问知识点
linux内核原理面试必问(由易到难) 简单型 1:linux中内核空间及用户空间的区别?用户空间与内核通信方式有哪些? 2:linux中内存划分及如何使用?虚拟地址及物理地址的概念及彼此之间的转化, ...
- 微信小程序参数二维码6问6答
微信小程序参数二维码[基础知识篇],从6个常见问题了解小程序参数二维码的入门知识. 1.什么是小程序参数码? 微信小程序参数二维码:针对小程序特定页面,设定相应参数值,用户扫描后进入相应的页面. 2. ...
- 剑指Offer——中国银行面试知识储备
剑指Offer--中国银行面试知识储备+面试内容 事件介绍 时间:2016.11.23 08:30 地点:北京市海淀区永丰路299号南门(中国银行软件中心) 事件:中国银行面试(中英文面试) 注意事项 ...
- 图解Java线程的生命周期,看完再也不怕面试官问了
文章首发自个人微信公众号: 小哈学Java https://www.exception.site/java-concurrency/java-concurrency-thread-life-cycle ...
- JAVA程序员面试30问(附带答案)
第一,谈谈final, finally, finalize的区别. 最常被问到.final修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承.因此一个类不能 ...
随机推荐
- java中的数组的Arrays工具类的使用
package day04.d1.shuzu; import java.util.Arrays; /** * Arrays 工具类 * @author Administrator * */public ...
- BZOJ1222: [HNOI2001]产品加工(诡异背包dp)
Time Limit: 15 Sec Memory Limit: 162 MBSubmit: 907 Solved: 587[Submit][Status][Discuss] Descriptio ...
- mybatis 高级映射和spring整合之查询缓存(5)
mybatis 高级映射和spring整合之查询缓存(5) 2.0 查询缓存 2.0.1 什么是查询缓存 mybatis提供缓存,用于减轻数据压力,提高数据库性能. mybatis提供一级缓存和二级缓 ...
- HighCharts 图表插件 自定义绑定 时间轴数据
HighCharts 图表插件 自定义绑定 时间轴数据,解决时间轴自动显示数据与实际绑定数据时间不对应问题! 可能要用到的源码片段:http://code.662p.com/list/14_1.htm ...
- 配置DCOM中excel权限
ASP.NET 导出Excel 错误解决备忘 网站项目要用到导出为excel文件的功能,程序运行时报错:"检索 COM 类工厂中 CLSID 为{000-0000-0000-C0046} 的 ...
- caffe学习笔记--跑个SampleCode
Caffe默认情况会安装在CAFFERROOT,就是解压到那个目录,例如: home/username/caffe-master, 所以下面的工作,默认已经切换到了该工作目录.下面的工作主要是,用于测 ...
- java学习笔记3——异或
异或原理: 转换两个字符或数为2进制的ASCII码,再按位异或,即 0001 0001 ---> 0000 0000 0000 ---> 0000 0001 0000 ---> 00 ...
- 图片放大不失真软件PhotoZoom的工具栏
PhotoZoom是一款极其简单的图片无损放大工具,简单几即可渲染出完美的放大照片,呈现无与伦比的画质效果.虽然简单,菜单和面板的功能很少,但却是设计师的必备神器,因为其简单易用性,它的软件菜单命令和 ...
- tsar采集数据原理
系统模块 cpu 字段含义 user: 表示CPU执行用户进程的时间,通常期望用户空间CPU越高越好. sys: 表示CPU在内核运行时间,系统CPU占用率高,表明系统某部分存在瓶颈.通常值越低越好. ...
- WSDL详解(一)
WSDL文档使用web服务描述语言来定义服务. 文档包括逻辑(抽象)部分和具体部分. 抽象部分用于定义独立于实现的数据类型和消息,具体部分定义一个endpoint如何实现一个可以与外界进行交互的服务. ...