对于以下每个代码片段,我需要说明增长函数以及顺序。我相当确定我已经正确确定了订单,但我正在努力了解如何从我提供的内容中推导出带有常量和所有内容的整个函数。
以下是代码片段:
// CODE #1
for (int count=0; count<n; count++)
{
for (int count2=0; count2<n; count2=count2+2)
{
System.out.println(count + ", " + count2);
}
}
// CODE #2
for (int count=0; count<n; count++)
{
for (int count2=1; count2<n; count2=count2*2)
{
System.out.println(count + ", " + count2);
}
}
// CODE #3
for (int count = 0; count < n; count++) {
printsum(count); }
// Here’s the method:
public void printsum(int count) {
int sum = 0;
for (int i=1; i<count; i++) {
sum += i;
}
System.out.println(sum + ": " + sum);
}
// CODE #4
for (int count = 0; count < n; count++)
{
printsum(count);
}
// Here’s the method:
public void printsum(int count) {
int sum = 0;
sum = count * (count + 1)/2;
System.out.println(“sum : " + sum);
}
我认为顺序是O(n^2)
, O(nlogn (base 2))
,O(n^2)
和O(n^3)
。如果有人可以就找到增长函数或纠正我到目前为止的工作提供任何建议,请告诉我。