您的位置:首页 > 职场人生

IT关键词,面试知识问与答

2016-09-06 09:48 211 查看

二叉树遍历的三种方式?

遍历是指依次访问⼆叉树中的每个元素。有三种遍历⽅法,分别是前序遍历、
中序遍历和后序遍历。它们是按照访问根节点和⼦节点的先后顺序命名的。
• 前序遍历:先访问根节点,然后访问左⼦树,最后访问右⼦树;
• 中序遍历:先访问左⼦树,然后访问根节点,最后访问右⼦树;
• 后序遍历:先访问左⼦树,然后访问右⼦树,最后访问根节点。

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(n^2),立方阶O(n^3),...,k次方阶O(n^k),指数阶O(2^n)。随着问题规模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系统包中加入了若干标准的外部程序(即外部命令),这才与内部命令(即由解释执行的命令)一同构建起一个在磁盘操作时代相对完备的人机交互环境。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: