全排列
例如abcd,排列可能数等于数字个数的阶乘 4!
有重复元素的全排列
例如aabbbcd,排列数等于全排列数/(a元素重复数的阶乘*b元素重复数的阶乘) 6!/(2!*3!)
如果需要空间,但是又不允许有额外空间,可以尝试利用输入和输出,这部分空间通常不会计算入内
2进制轮训
对于整数%2,得到最后一位,然后再/2,消除最后一位,循环调用即可
由前序遍历和中序遍历确定一个二叉树
http://www.codebelief.com/article/2016/12/binary-tree-traversal-sequence/
求质数数量 厄拉多塞筛法
二叉树
深度优先遍历
前序 中序 后序遍历
广度优先遍历
层序遍历
图论
最短路径 迪杰斯特拉
单元最短路径问题
算法
借助辅助空间,空间换时间
递归带来的问题
- 堆栈溢出。堆栈溢出的产生是由于过多的函数调用,导致调用堆栈无法容纳这些调用的返回地址。
- 重叠计算
- 空间复杂度高
- 函数调用耗时多