什么是算法

书籍推荐
《数据结构与算法分析》

- 表、栈和队列
- 树
- 散列(hash)
- 优先队列(堆)
- 排序
定义 问题

遇到思路障碍怎么办?
1.将抽象问题转换为具体的问题
2.将没见过的问题转换为见过的问题
冒泡排序


选择排序

说明:这样做其实就是每次在没排的这一堆里面找到最小的那个,然后推到前面去。
总结冒泡和选择排序的时间损耗是一样的
插入排序

归并排序
可能会有堆栈溢出
快速排序
自私排序:比我矮的站我前面,比我高的站我后面。
随机快排
-
比较次数的对比
冒泡:19 18 17 ...
快排: 17 9 9 3 3 3...对半 -
程序员3大难题
1.变量命名
2.循环边界
3.缓存失效
桶排法


基数排序

- 时间复杂度
n^2
n*logn
n + max
网友评论