欢迎来到HugNew-拥抱变化,扫一扫右边二维码关注微信订阅号:Martin说 或 加QQ群:427697041互相交流,Stay hungry, Stay foolish.

时间复杂度和空间复杂度

算法 Martin 2588℃ 0评论

时间复杂度

时间复杂度简单的理解就是执行语句的条数。如果有循环和递归,则忽略简单语句,直接算循环和递归的语句执行次数。

比如:

int x = 1;//时间复杂度为O(1)

for(int i=0; i<n; i++) {

System.out.println(i);

}//时间复杂度为O(n)

具体例子:

int x = 1;

2、O(n)

for(int i=0; i<n; i++) {

System.out.println(i);

}

3、O()

int n = 8count = 0;;

for(int i=1; i<=n; i *= 2) {

count++;

}

4、

int n = 8count = 0;;

for(int i=1; i<=n; i++) {

for(int j=1; j<=n; j++) {

count++;

}

}

5、

int n = 8, count = 0;;

for(int i=1; i<=n; i *= 2) {

for(int j=1; j<=n; j++) {

count++;

}

}

所举例子都比较简单。

空间复杂度

空间复杂度也很简单的理解为临时变量占用的存储空间。一个简单例子:

//交换两个变量x和y

int x=1, y=2;

int temp = x;

x = y;

y = temp;

一个临时变量temp,所以空间复杂度为O(1)。

转载请注明:HugNew » 时间复杂度和空间复杂度

喜欢 (5)or分享 (0)
发表我的评论
取消评论

表情