递归&分治
代码模板:重点:level(在第几层),业务逻辑,下一层递归调用,解决完之后收尾
斐波拉契:
递归应用--分治:没有所谓的重复计算,有重复计算可考虑动态规划和子问题复用
计算X的n次方
1.调用库函数(面试官不允许写)O(1)
2.暴力O(N)
3.傻乘,一分为二(奇偶),左边计算==》计算x的n/2次方(偶),计算x的n/2次方(偶)==》n/4。。。。。 O(logn)
为0情况,小于0情况,大于0情况
非递归:不断对 n 进行判断,n的位移,n右移1位表示n/2
求众数
1.暴力 O(n2)
2.map O(N)
3.sort O(NlogN)
4.分治算法,left ,right,left==right,判断总体众数,否则再进行比较,返回较大值O(NlogN)