非递归二分查找:
时间复杂度为O(logn)
空间复杂度为O(1)
时间复杂度为O(2^n)
空间复杂度为O(1)
1、时间复杂度就是一个计算执行基本操作的次数的函数
一般算法O(n)计算方法:
<1>用时间1取代运行时间中的所有加法常数
<2>在修改后的运行次数函数中,只保留最高阶项
例如:2*n^3+n (只保留n^3,因为n^3的增长率远远大于n)
<3>如果最高阶项系数存在且不是1,则去除与这个项相乘的常数
(所以上式的2可以除去,时间复杂度为0(n^3) )
2、递归算法时间复杂度=递归总次数*每次递归次数
3、空间复杂度:函数中创建对象的个数关于问题规模函数表达式