2016/8/13面试中的问题:
程序=数据结构+算法 (讲述常见的数据结构和算法)
算法:
- 三路划分-快速排序
- 合并排序(更具扩展性,复杂度类似快速排序)
- DF/BF 搜索 (要知道使用场景)
- Prim / Kruskal (最小生成树)
- Dijkstra (最短路径算法)
- 选择算法
数据结构
- HashMap (真的要知道所有哈希结构)
- 图和树(红黑树很好学) (red-black trees are good to learn)
- 堆(优先级队列)
- 栈/队列(必须知道的基础内容)
- Tries | 字典树
ECMAScript
中有5中简单数据类型(也称为基本数据类型): Undefined
、Null
、Boolean
、Number
和String
。还有1中复杂的数据类型————Object
,Object
本质上是由一组无序的名值对组成的。
其Undefined
、Null
、Boolean
、Number
都属于基本类型。Object
、Array
和Function
则属于引用类型,String
有些特殊?
Null和undefined 区别
Undefined
类型只有一个值,即特殊的undefined
。在使用var
声明变量但未对其加以初始化时,这个变量的值就是undefined
Null
类型是第二个只有一个值的数据类型,这个特殊的值是null
。从逻辑角度来看,null
值表示一个空对象指针,而这也正是使用typeof
操作符检测null
时会返回object
的原因。 例如:var car = null; console.log(typeof car); // "object"
js中的typeof 的返回类型有什么
typeof 操作符
由于js
中的变量是松散类型的,所以它提供了一种检测当前变量的数据类型的方法,也就是typeof关键字.
通过typeof
关键字,对这5种数据类型会返回下面的值(以字符串形式显示)
undefined
---------- 如果值未定义 Undefined
boolean
---------- 如果这个值是布尔值 Boolean
string
---------- 如果这个值是字符串 String
number
---------- 如果这个值是数值类型 Number
object
---------- 如果这个值是对象或null
Object
需要注意的是typeof null
返回为object
,因为特殊值null
被认为是一个空的对象引用。
数据结构的查找和排序算法要熟记。各个算法的时间复杂度,及其稳定性。
对js熟悉多少?什么程度?知道js中的b包吗?