我个人的 PHP 编程经验中,递归调用常常与静态变量使用。静态变量的含义可以参考 PHP 手册。希望下面的代码,会更有利于对递归以及静态变量的理解
header("Content-type: text/plain");
function static_function () {
static $i = 0;
if ($i++ < 10) {
echo $i . "\n";
static_function();
}
}
static_function();这段代码会如数输出 1 到 10 的数字。在 static_function 函数第二次运行时,变量 i 由于是静态变量,所以仍被保留不被释放,进而可以得到自增的值。
这个问题不单单出现在PHP中,你可以在其他语言的代码中经常看到:
差:for($i=0;$i<count($array);$i++){...}
好:$count=count($array);for($i=0;$i<$count;$i++){...}
这因该很好解释,但许多人就是想少写一行代码而浪费了系统资源。如果在循环声明中使用了count函数,那每次循环都会调用一次。如果你的循环次数很多,那就会浪费非常多的时间。
用预定义长量代替没有意义的数字
defined ("GREAT_THAN_MAX",1);
defined("NORMAL",0);
defined("LESS_THAN_MIN",-1);
switch($type){
case GREAT_THAN_MAX:
...
break;
case NORMAL:
...
break;
case LESS_THAN_MIN:
...
break;
default:
doSomething();
break;
}
分享到:
相关推荐
《编程之美:微软技术面试心得》是一本专为准备技术面试的程序员量身打造的书籍。这本书集结了微软公司在招聘过程中遇到的经典编程题目和解决思路,旨在帮助读者提升编程技能,增强解决实际问题的能力,同时也为面试...
Python编程之美在于其简洁、高效和可读性强的语法,以及丰富的库支持,使得它成为数据科学、Web开发、自动化脚本等多个领域的首选语言。"There should be one and preferably only one obvious way to do it." 这是...
Java并发编程之美_部分81 本篇文章主要讨论Java并发编程中的定时器功能,特别是使用ScheduledThreadPoolExecutor来实现定时任务的执行。同时,本篇文章还讨论了在并发编程中对需要复用但是会被下游修改的参数进行深...
微软编程之美2022初试题目收集 本篇资源摘要信息来自微软编程之美2022初试题目收集.pdf,涵盖多个编程题目,包括 Beauty of Programming 2013 初赛第一场题目列表、相似字符串、仙剑 5 前传之璇光殿等。 Beauty ...
"Python编程之美——带你进入Python语言世界"课程设计大纲参考 Python语言是一种高级、解释型的编程语言,它具有简洁、易学、强大等特点,广泛应用于数据科学、人工智能、网络爬虫、自动化操作等领域。本课程设计...
2012"编程之美"全国挑战赛题目 Ocean Scream
"编程之美微软技术面试心得" 编程之美微软技术面试心得是《编程之美微软技术面试心得.doc》的一份总结,该文档主要介绍了微软技术面试的心得体会和经验。下面是从该文档中所提取的知识点: 1. 微软技术面试的特点...
2016年举行的编程之美挑战赛是一项面向计算机编程爱好者的竞赛活动,它旨在激发参与者的创新思维和编程技能,通过解决一系列富有挑战性的编程问题来提升参赛者的专业能力。这类竞赛通常会吸引众多高校学生和专业...
微软编程之美挑战赛复赛是中国计算机学会(CCF)主办的一项著名的计算机编程竞赛,旨在选拔和培养高水平的计算机软件编程人才。复赛阶段的题目难度较高,涉及算法、数据结构、软件工程等多个领域,要求参赛者具备...
在探讨《编程之美微软挑战赛第一题.zip》这一压缩包文件内容之前,我们首先要理解“编程之美”这一概念。编程之美不仅仅体现在代码的优雅和效率上,也体现在解决复杂问题的能力以及设计出易于理解和维护的软件架构上...
从给定的文件信息中,我们可以了解到这是一份与微软编程相关的资料包,特别关注的是“编程之美”,这可能是参加某项以微软为主题的编程竞赛的参赛者所需要的内容。考虑到“美赛”这个标签,这很可能是指的是数学建模...
"编程之美"这个主题涵盖了各种有趣的算法,这些算法不仅能够帮助我们理解计算机科学的本质,还能激发我们的创新思维和逻辑能力。下面我们将深入探讨一些常见的有趣算法。 1. **排序算法**:排序是最基础也是最广泛...
《Java并发编程之美》是专为Java开发者设计的一本指南,旨在帮助读者克服并发编程的高门槛,从而在职场面试和高并发、高流量系统开发中得心应手。本书由瞿陆续和薛宾田合著,由中国工信出版集团旗下的电子工业出版社...
2017年,一场以“编程之美”为主题的资格赛吸引了众多编程爱好者的目光,这不仅是一场技术的角逐,更是一次智慧与创造力的较量。在这次资格赛中,参赛者们面临着基于文档的问答挑战,这不仅考验他们对编程语言的熟练...
Java并发编程之美_部分31 本篇章节主要讲解了 Java 中的并发编程相关知识,包括乐观锁、公平锁、非公平锁、独占锁和共享锁等概念。 首先,介绍了乐观锁的概念,乐观锁是一种无锁机制,通过在表中添加版本号或业务...
《编程之美——微软技术面试心得》是一本深受程序员喜爱的书籍,它主要涵盖了微软公司在面试过程中经常考察的技术问题和解题思路。这本书不仅适合正在准备技术面试的求职者,也适合想要提升编程技能和思维能力的...
《Java并发编程之美》第7章中,我们深入探讨了Java并发包中的并发队列原理,特别是从尾节点进行插入这一关键操作。在Java并发队列中,offer()方法用于在队列尾部添加元素,它是线程安全的,主要依赖于CAS(Compare ...
8. **编程之美**:这可能指的是优雅、高效的代码编写,强调代码的可读性、可维护性和性能优化。Python鼓励使用简洁明了的语法,遵循PEP 8编码规范,可以提高代码质量。 9. **大数相加**:在Python中,可以使用内置...
《Python编程之美——带你进入Python语言世界》课程设计大纲详细解析 这门课程旨在引导学习者进入Python的世界,体验其语法简洁、类库丰富的魅力。无论是对于有C/C++或Java背景的程序员,还是对系统维护人员,...