C++中的for循环

本文介绍了在信奥赛中循环在C++编程中的重要性,特别是双重循环的时间复杂度为O(N²),并概述了常见的时间复杂度类别及其应用场景。学习如何灵活运用循环语句和理解时间复杂度对于解题至关重要。
摘要由CSDN通过智能技术生成

上一讲C++的输入输出与判断经过练习,就可以写简单的程序了。但是在信奥赛中,几乎没有不需要使用循环的。因此,循环是C++的一门必学课。

时间复杂度

时间复杂度是初赛中一个重要的考点。何为时间复杂度?就是程序执行语句的速度。带有循环的语句,时间复杂度往往会由输入数据决定。时间复杂度用O()符号来表示,读作
【大O】。我们在计算时间复杂度时,一般只会计算循环的时间复杂度,对每个字母取最高次数。

#include<iostream>
using namespace std;
int main(){
	int n;
	cin >> n;
	for (int i=1;i<=n;i++){
		for (int j=1;j<=n;j++)
			cout << j << " ";
		cout << endl;
	}return 0;
}
  1. 在这串代码中,我们从这个双重循环入手。根据乘法原理,这个循环执行了n*n次。所以时间复杂度为O(N²)
    下面列举了几个常用的时间复杂度:
  1. O(1)用数学方法解决。
  2. O(logN)对数阶
  3. O(N)线性阶,算是比较优秀的时间复杂度。
  4. O(NlogN)
  5. O(N²)平方阶,比较劣质,不容易拿到满分。

循环语句

循环语句用的关键字是for。一般的循环语句会有三条语句,下为模版:
for(变量初始化;循环结束条件;变量变化){
代码
}
一般的循环变量名会定义为i,类型为int。至于循环条件,自己定。变量的变化根据实际情况来定。总之,循环属于比较灵活的语句,大部分都需要自己理解。那么下面这条语句是什么意思呢?
for (int i=1;i<=10;i++)
第一条语句定义了一个变量i,他的初始值是1。
接下来到第二条语句,判断I是否小于10,也就是1是否小于10。如果小于10,就结束了。
执行完内部代码之后,再执行第三条语句,i自加,可以理解为i+=1
回到第一条语句。

循环的用途很多,主要用于枚举以及一些特殊算法。在考试时,往往和时间复杂度一起出现。需要分辨好为什么要用循环,怎么用循环,才可以做对题目!

  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值