FOR循环精讲

> 1.初步结识

for是写出题的重要组成部分之一,每个题如果没有for循环根本是无法做出来的,可见for循环在c++语言中是有多么重要,那么for的格式是怎样的呢??

for(控制变量初始化表达式;条件表达式;增量表达式){

...;

} 通过以上简单的for结构我们可看出,for循环的结构由三部分构成,其中决定着for执行条件的是中间的条件表达式(这三个构成是不可以调换位置的),我们知道,在条件表达式的判断中,真则为“1”,假则为“0”,那么如果我们把条件表达式的值一直设为“1”,循环是会变成一个死循环的,我们可以利用这一点,把for当成while用(在下面我会提到);那为何for循环在通常情况下不是死循环呢?

一般情况下的for循环:

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

...;

} 通过以上我们可看出,在i的值不断变换之下,“i<=n”这个条件会逐渐变为假,所以for循化就会终止下去

> 2.时间复杂度

一般入门者刚刚开始对时间复杂度是没有一个较为完整体系的认识的,那么什么是时间复杂度呢??

时间复杂度简单来说就是我们这个程序运行一组数据所需要的时间,而在做题过程中,我们用到for了就少不了时间复杂度;在计算机中,你让它循环1000万次它也不拍,但如果你让它循环1亿次的话...

那么一个for循环的时间复杂度到底为多少呢??

我们假设for它循化一次的时间为“1”,那我们做用代码来做一下实验:

1)一重循环

#include<iostream>
using namespace std;
int main(){
int m=0;
for(int i=1;i<=100;i++){
m+=1;
}
cout<<m;
return 0;
}

最终结果为100 时间复杂度为o

2)两重循环

#include<iostream>
using namespace std;
int main(){
int m=0;
for(int i=1;i<=100;i++){
m+=1;
}
cout<<m;
return 0;
}

最终结果为10000 时间复杂度为o2

以此类推,假设for里面有x重循环,则时间复杂度为ox

> 3.循环运行

我们用两重for作为例子:

for(int i=1;i<=100;i++){
for(int j = 1;j <= 100; j ++){
m++;
}
}

注意:第一重for循环在运行时,前面的控制变量初始化表达式只是在第一次进行循环时运用的,作用只是给你的变量初始化进行一个初始的赋值,而在第一次运行完之后就不会运行了

for循环在运行时(两重循环),他是运行完里面二重for,在运行下一次的,就好比这样,i=1时,进行二重for(设n为10),j初始值为1,然后,j++,直到j>10时,二重for的条件表达式不再成立

关于 for 循环与 循环嵌套的更多相关文章

  1. 关于Qt的事件循环以及QEventLoop的简单使用(QEventLoop::quit()能够终止事件循环,事件循环是可以嵌套的)

    http://www.cnblogs.com/-wang-cheng/p/4973021.html 1.一般我们的事件循环都是由exec()来开启的,例如下面的例子: 1 QCoreApplicato ...

  2. 047 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 09 嵌套while循环应用

    047 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 09 嵌套while循环应用 本文知识点:嵌套while循环应用 什么是循环嵌套? 什么是循环嵌套? ...

  3. (十一)if...else&for循环&while循环

    ----------------------------------if else------------------------------1.最基本的if语句:if name =="Al ...

  4. Python流程控制-while循环-for循环

    写重复代码 是可耻的行为 -------------- 完美的分割线  -------------- 摘录自:http://www.runoob.com/python/python-loops.htm ...

  5. 流程控制之while循环for循环

    流程控制之while循环1.什么是循环 循环就是重复做某件事2.为什么要有循环 为了让计算机能够具备人重复做某件事的能力3.如何用循环 while语法: while 条件: code1 code2 c ...

  6. js循环(while循环,do while循环,for循环)相关知识点及练习

    08.循环 1.循环! 循环的作用: 简化代码,处理重复执行的代码 遍历数组.json对象.节点集合 2.while循环 语法: while(循环的条件){ 循环体 } 3.循环的五大要素 循环变量 ...

  7. 控制流程之while循环, for循环

    条件循环:while,语法如下 while 条件: # 循环体 # 如果条件为真,那么循环体则执行,执行完毕后再次循环,重新判断条件... # 如果条件为假,那么循环体不执行,循环终止死循环 基本使用 ...

  8. python 循环、循环设计、循环对象

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 1.循环 循环用于重复执行一些程序块.从上一讲的选择结构,我们已经看到了如何用缩进 ...

  9. Python第四天 流程控制 if else条件判断 for循环 while循环

    Python第四天   流程控制   if else条件判断   for循环 while循环 目录 Pycharm使用技巧(转载) Python第一天  安装  shell  文件 Python第二天 ...

  10. php之快速入门学习-13(PHP 循环 - While 循环)

    PHP 循环 - While 循环 循环执行代码块指定的次数,或者当指定的条件为真时循环执行代码块. PHP 循环 在您编写代码时,您经常需要让相同的代码块一次又一次地重复运行.我们可以在代码中使用循 ...

随机推荐

  1. 【c语言】实现一个函数,求字符串的长度,不同意创建第三方变量

    // 实现一个函数,求字符串的长度.不同意创建第三方变量. #include <stdio.h> #include <assert.h> int my_strlen_no(ch ...

  2. Android长按事件和点击事件问题处理,OnItemLongClickListener和OnItemClickListener冲突问题

    今天在做demo时,须要设置ListView的item的长按和点击事件.OnItemLongClickListener和OnItemClickListener,然而点击事件能够实现,可是在长按操作时会 ...

  3. Ubuntu Linux訪问小米手机存储卡

    操作系统: 麒麟14.04 安装工具 sudo apt-get install mtpfs libfuse-dev libmad0-dev sudo mkdir /media/mtp 重新启动与使用 ...

  4. js原生的轮播,原理以及实践

    轮播,无论是文字轮播还是图片轮播,他们的原理是一样的,都是通过定时器执行循环展示和影藏. 一.手动轮播 (1)原理 一系列的大小相等的图片平铺,利用CSS布局只显示一张图片,其余隐藏.通过计算偏移量利 ...

  5. Java加密与解密笔记(四) 高级应用

    术语列表: CA:证书颁发认证机构(Certificate Authority) PEM:隐私增强邮件(Privacy Enhanced Mail),是OpenSSL使用的一种密钥文件. PKI:公钥 ...

  6. 10个最有用的 IntelliJ IDEA 插件

    IntelliJ IDEA鼓舞了许多Java开发人员编写插件,从J2EE到代码编辑工具再到游戏.现在,它拥有了一个强大的插件生态系统,超过1500可用的插件以及几乎每周都有新的插件出现.在这篇文章中, ...

  7. Unable to resolve persistence unit root URL

    异常信息 时间:2017-03-07 11:46:05,516 - 级别:[ WARN] - 消息: [other] The web application [ROOT] appears to hav ...

  8. PHP是干什么用?

    掌握PHP就是使用电脑制定规则.框架tp3.2/5.2 在结构化编程中,程序围绕着要解决的任务来设计. 面向对象编程中,程序围绕着问题域中的对象来设计. 面对对象的识别事物的方式: ●类比----&g ...

  9. Spring框架(三) JDBCTemplate,声明式事务,自动装载(注解)

    JDBCTemplate 按照标准正常项目的结构 结构图: model层 dao层 实现  dao:(DateBase Access Object) 数据访问对象,dao层只用来访问数据库和模型层 s ...

  10. 实现一个 myshell

    重点 1.动手前首先要想清楚为什么实现一个 shell 要用到 fork (创建子进程),为什么不能把活全由 shell 干了呢?原因其实很简单,进程是运行的程序,一个进程就只能有一个程序(这个知识点 ...