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. Java 模拟栈结构

    栈和队列: 通常是作为程序猿的工具,用于辅助构思算法.生命周期较短,执行时才被创建 訪问受限.在特定时刻,仅仅有一个数据可被读取或删除 是一种抽象的结构.内部的实现机制.对用户不可见.比方用数组.链表 ...

  2. Java中string 创建对象时 “”和null的差别

    null和""的差别 问题一: null和""的差别 String s=null; string.trim()就会抛出为空的exception String s ...

  3. 【Jquery】prop与attr的差别

    近期因项目须要用到复选框,当中一个控制全选. // 全选 $(".ckb_all").click(function(){ if($(this).attr("checked ...

  4. Python3简单的输入输出及内置函数查看

    工作之余和女朋友一起学Python3,代码都是她敲的,有点辣眼睛,仅做参考. 1.题目:输入"姓名",输出"你好,姓名" 有关安装和打开Python shell ...

  5. springmvc中@PathVariable传Double精度丢失

    页面请求 http://localhost:8080/test/3.201 后端接受数据 /** * 测试 * * @param number */ @RequestMapping(value = & ...

  6. 《决战大数据:驾驭未来商业的利器》【PDF】下载

    内容简介 大数据时代的来临,给当今的商业带来了极大的冲击,多数电商人无不"谈大数据色变",并呈现出一种观望.迷茫.手足无措的状态.车品觉,作为一名经验丰富的电商人,在敬畏大数据的同 ...

  7. 2.python数据类型

    1 Number(数字) 2   字符串类型(string)   字符串内置方法 # string.capitalize() 把字符串的第一个字符大写 # string.center(width) 返 ...

  8. 深度优先搜索(DFS)——部分和问题

    对于深度优先搜索,这里有篇写的不错的博客:DFS算法介绍 .总得来说是从某个状态开始,不断的转移状态知道无法转移,然后回到前一步的状态.如此不断的重复一直到找到最终的解.根据这个特点,常常会用到递归. ...

  9. GVIM与模板——让FPGA开发变得更简单

    还在使用FPGA开发环境自带的代码编辑器?还在逐个字母敲击冗长重复的代码?明德扬至简设计法让你快速提高代码编写效率!利用GVIM这一高效的编辑工具并添加自定义模板,通过简短的脚本命令即可自动生成所有常 ...

  10. jsDOM编程-拖拽层

    页面样式代码: <!doctype html><html><head><meta http-equiv="content-type" co ...