python什么是递归函数 您所在的位置:网站首页 递归语句是什么 python什么是递归函数

python什么是递归函数

2022-09-15 01:17| 来源: 网络整理| 查看: 265

前面的学习过程中,我们已经看到过很多调用其他函数的函数实例。例如,函数 A 可以调用函数 B,而函数 B 又可以调用函数 C。

实际上,函数也可以调用它自己。调用自己的函数称为递归函数。来看以下 message 函数:

void message()

{

cout

cout 0)

{

cout

if (times > 0)

{

cout

cout

if (position == inputString. length () ) //基本情况

return 0;

if (inputString[position] == ch)

return 1 + frequency(ch, inputString, position+1);

else

return frequency(ch, inputString, position+1);

}

该函数的参数包括:

ch:要搜索和计数的字符。

inputString:要搜索的字符串。

position:搜索的起始下标。

第一个 if 语句确定是否已出现基本情况,即到达字符串的结尾:

if (position == inputString.length())

return 0;

如果已经到达字符串的末尾,则函数返回 0,表示没有更多的字符要计数。否则,执行以下 if 语句:

if (inputString[position] == ch)

return 1 + frequency(ch, inputString, position+1);

else

return frequency(ch, inputString, position+1);

如果 inputString [position] 是搜索字符,则函数执行递归调用。返回语句返回 1 加上搜索字符在字符串中出现的次数,从 position+1 开始。如果 inputString [position] 不是搜索字符,则会进行递归调用以搜索字符串的其余部分。下面的程序演示了以上示例。

// This program demonstrates a recursive function for

// counting the number of times a character appears

// in a string.

#include

#include

using namespace std;

// Function prototype

int frequency(char ch, string inputString , int pos);

int main()

{

string inputString = "abcddddef";

cout



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有