`
mutongwu
  • 浏览: 439687 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

for循环迭代小改进

J# 
阅读更多
常见写法:
// original loops
for (var i=0; i < items.length; i++){
    process(items[i]);
}
var j=0;
while (j < items.length){
    process(items[j++]]);
}
var k=0;
do {
    process(items[k++]);
} while (k < items.length);


小改进:
//minimizing property lookups and reversing
for (var i=items.length; i--; ){
    process(items[i]);
}
var j = items.length;
while (j--){
    process(items[j]]);
}
var k = items.length-1;
do {
    process(items[k]);
} while (k--);

分享到:
评论

相关推荐

    人工智能-项目实践-强化学习-路径规划强化学习.zip

    房间例子: 网上的例子,原来的代码有问题,有以下修改: 1、while循环是死循环,加上计数器,或者改为for循环 2、根据Qlearning算法原理,第二层是循环语句不是判断语句 思考:第二层是判断语句也可以得到结果 ...

    Angular-LINQ.zip

    它使用最新的ecmascript 2015语言规范:iterables([system.iterator]),generators(function*),for of循环。所有相关方法都是通过延迟执行来实现的,因此不会执行不必要的迭代。,Angularjs于2016年发布,是...

    java8集合源码-learn_J9:学习_J9

    循环的并行版本也很困难 没有流利地传达程序员的意图 public Set findLongTracks(List albums) { Set trackNames = new HashSet&lt;&gt;(); for(Album album : albums) { for (Track track : album.getTrackList()) { ...

    MATLAB下蚁群算法的MEX版

    蚁群算法作为一种需要多次迭代的算法, 在MATLAB下以.m脚本运行的效率是很慢的, MATLAB中for循环的低效率大家也体会到过吧. 但是MathWorks聪明在他们提供了C++/FORTRAN --- MATLAB接口,你可以通过少量的MX API调用以...

    cpp-modern-30

    a9 W- j9 ^ 4 W 05 |容器汇编II:需要函数对象的容器't6 X4 H7 06 | 异常:用还是不用,这是个问题 07 | 迭代器和好用的新for循环1 k) c0 L' O# v 08 | 易用性改进 I:自动类型推断和初始化* |5 x- + 06 | 异常:用...

    AspNet MVC 开发技术

    4.4.3 for循环 73 4.4.4 循环的中断 77 4.4.5 无限循环 78 4.5 小结 78 4.6 练习 79 4.7 本章要点 79 第5章 变量的更多内容 81 5.1 类型转换 81 5.1.1 隐式转换 82 5.1.2 显式转换 83 5.1.3 使用Convert命令进行显式...

    ezpp::magnifying_glass_tilted_left: C++性能剖析器(跨平台、无锁、智能) Easy Performance Profiler that is cross-platform, lock-free and smart for C++

    ezppC++性能剖析器(跨平台、无锁、智能)Easy Performance Profiler that is cross-platform, lock-free and ...第二个层次是常规的算法改进、流程优化等等,比如加位图、树改HASH、递归改循环、分支预测、缓存行、并

    Scrum Devlopment Process.pdf

    冲刺阶段是开发工作的一个迭代循环。经理判定时间、竞争性、质量或功能符合要求后,迭代过程结束并进入结束阶段。该方法也被称为并发工程。开发包含以下活动: · 与各项目小组开会讨论总结计划。 · 对产品所需...

    《C++编程艺术》教程+代码

    9.6.11 for循环 308 9.6.12 处理cin和cout语句 309 9.7 Mini C++的库函数 311 9.8 mccommon.h头文件 313 9.9 编译并链接Mini C++解释程序 315 9.10 演示Mini C++ 315 9.11 改进Mini C++ 323 9.12 扩展Mini C++ 324 ...

    Visual C++ 2010入门经典(第5版)--源代码及课后练习答案

    3.2.2 for循环的变体 119 3.2.3 while循环 126 3.2.4 do-while循环 128 3.2.5 嵌套的循环 129 3.3 C++/CLI编程 132 3.4 小结 137 3.5 练习 138 3.6 本章主要内容 138 第4章 数组、字符串和指针 139 4.1 ...

    Google C++ 编码规范

    缺点:C语言中,当表达式的值没有使用时,传统的做法是使用后置自增,特别是在for循环中,有些人觉得后置自增更加易懂,因为这很像自然语言,主语(i)在谓语动词(++)前。 结论:对简单数值(非对象)来说,两种...

    Oracle SQL高级编程(资深Oracle专家力作,OakTable团队推荐)--随书源代码

    9.3.3 FOR循环 231 9.4 返回更新后的行 232 9.5 求解顺序 233 9.5.1 行求解顺序 233 9.5.2 规则求解顺序 235 9.6 聚合 237 9.7 迭代 237 9.7.1 一个例子 238 9.7.2 PRESENTV与空值 239 9.8 查找表 240 ...

    77G 22套C语言 C++ 数据结构 程序设计视频课程合集 C丨C++相关学习视频全套视频教程

    ABG2C_for_循环.mp4 ABG2C_两个预处理器指令.mp4 ABG2C_从何处入手.mp4 ABG2C_关系运算符.mp4 ABG2C_初识C语言.mp4 ABG2C_变量.mp4 ABG2C_字符串.mp4 ABG2C_字符和字符串函数.mp4 ABG2C_循环.mp4 ABG2C_...

    costas_loop代码

    要点在双循环链表、两个消息更新的计算步骤(检验节点和变量节点运算,也叫水平步骤和垂直步骤)。(c 程序可以在网上Mackey的网站下,我这也有)。 % 3. 对LDPC码的和积译码算法充分理解之后,可以看密度进化理论...

    工程硕士学位论文 基于Android+HTML5的移动Web项目高效开发探究

    先让网站能够正常工作于尽可能旧的浏览器上,然后不断为它在新型浏览器上实现更多的增强和改进。 Viewport 移动设备上的Viewport就是设备的屏幕上能用来显示网页的一块区域,即浏览器上用来显示网页的那部分区域。...

    java 面试题 总结

    for(int i=0;i;i++){ Thread t=new Thread(inc); t.start(); t=new Thread(dec); t.start(); } } private synchronized void inc(){ j++; System.out.println(Thread.currentThread().getName()+"-inc:"+j); } ...

    超级有影响力霸气的Java面试题大全文档

    超级有影响力的Java面试题大全文档 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。...

    二十三种设计模式【PDF版】

    设计模式之 Iterator(迭代器) 这个模式已经被整合入Java的Collection.在大多数场合下无需自己制造一个Iterator,只要将对象装入Collection中, 直接使用 Iterator 进行对象遍历。 设计模式之 Template(模板方法) ...

Global site tag (gtag.js) - Google Analytics