【发布时间】:2015-08-01 16:06:45
【问题描述】:
谁能说出以下代码块的时间复杂度
private static void Multiply(int num1, int num2)
{
long p,b,h1,h2,l1,l2,z0,z1,z2,m1,m2;
p = num1.ToString().Length-2;
b=Convert.ToInt32(Math.Pow(10,Convert.ToDouble(p)));
l1=num1%b;
h1 = num1 - l1;
l2 = num2 % b;
h2 = num2 - l2;
m1=num1 / b;
m2=num2 / b;
z0 = l1*(m1+m2);
z1 = m1*(h2 + Math.Abs(l1 - l2));
z2=l1*l2;
Console.WriteLine("Result is :"+((z0 +z1)*b+z2));
Console.ReadLine();
}
【问题讨论】:
-
欢迎来到 Stack Overflow。 时间复杂度究竟是什么?你能澄清你的问题吗?你有什么问题?你的变量是什么?您的结果值是多少,您实际期望的值是多少?请阅读FAQ、How to Ask 和help center 作为开始..
-
实际上是两个大数的乘法,num1 ,num2 将数字作为输入,结果显示在控制台上。所以我想知道上述函数的时间复杂度是多少
-
如果您正在寻找大 O 表示法,我相信这是 O(1),因为复杂度不是由输入算法的数据量决定的。也就是说,无论为两个输入变量传入什么,算法都将花费特定的时间。 en.wikipedia.org/wiki/Time_complexity
标签: c# optimization time-complexity