程序员的数学之阶段小结01

数据结构

是一个个解决问题的“模型”

数组和链表

通过下表直接定位数据 特别适合快速随机访问

循环 迭代 二分查找 斐波那契数列

适用稠密的数列

稀疏的话 改用链表来处理

C C++ 当中使用指针来实现的 java是对象引用来实现的

哈希表

链地址哈希表

哈希冲突的解决

栈 堆(求top K)

深度优先搜索 先进后出

队列

广度优先搜索 先进先出 消息队列等比较常用

内连接

外连接

基础算法

分治思想 mapreduce的数据切分 如何确定请求被分配到哪台机器上?这就引入了负载均衡算法

轮询和源地址哈希算法

回溯

八皇后和0-1背包问题