TechTarget信息化 > 百科词汇

recursion:递归

在计算机程序里,递归(recursion,名词)是一个递归的(recursive)程序,而且递归的有两个相关的意义:

  1)一个递归的程序或常式有能力调用它本身。 这通常意谓着当它调用它本身的时候它有能力保存它所处的条件或它正在服务的特别的程序(否则在执行代码时已经被发展的任何变量都会被下一个重复或遍历覆盖)。 典型地,这藉由在调用它本身之前或在刚刚被再进入的序列的开始在寄存器(register)或数据区域堆栈中保存值来做到。

  2)递归表达式是一个函数(function)、算法(algorithm)或指令序列(典型地,一个IF、THEN、ELSE 序列),它循环(loop)的回到它本身的开始,直到发现一些条件已经被满足 。在这里有一个简单的例子(使用一种制成的计算机源语言):

  CODELINE1  N=0;
  CODELINE2 IF N=<10 THEN DO WRITE LETTER;
  CODELINE3 ELSE GOTO CODELINE6;
  CODELINE4 N=N+1;
  CODELINE5 GOTO CODELINE2;
  CODELINE6 …some other instruction

  在这里,标着 CODELINE 到 CODELINE5 的指令是回归的直到 N 的值为10的情况出现。“IF N=<10”意思是“如果 N 的值少于 10 ”。“N=N+1”意思是“把 N 的现在的值加上1”。

  在数学中,递归比它用于程序中时有相似的但是更复杂的意义。

最近更新时间:2008-06-17 作者:Lee SavidgeEN

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

相关推荐