黑马程序员技术交流社区
标题:
关于时间复杂度的问题
[打印本页]
作者:
hurryup
时间:
2013-12-29 16:01
标题:
关于时间复杂度的问题
public class Test {
//求高人解答递归与循环算法的时间复杂度,到底存在什么区别?
//计算以x为底得n次幂,n为非负整数。
//循环算法的时间复杂度为o(n),递归算法的时间复杂度为o(log n),效率比循环高吗?
//如何比较两者的算法复杂度,有没有什么公式啊
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println(new Test().power1(4,7));
}
//递归算法
public int power(int x,int n)
{
int y = 0;
if(n==0)
{
y=1;
}else
{
y=power(x,n/2);//若为偶数项次
y=y*y;
if(n%2==1)//若为奇数项次
{
y=y*x;
}
}
return y;
}
//循环算法
public int power1(int x,int n)
{
int y=1;
for(int i=n;i>0;i--)
{
if(n==i)
{
y=x*y;
}else
{
y=y*x;
}
}
return y;
}
}
作者:
汪洋大海
时间:
2013-12-29 17:30
好帖,我是来顶的。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2