《递归》百度百科给的描述是这样的:
是指函数/过程/子程序在运行过程序中直接或间接调用自身而产生的重入现象。
在计算机编程里,递归指的是一个过程:函数不断引用自身,直到引用的对象已知。
以上是百度百科给的解释,个人也看过一些递归的算法不过也都不是特别明白,今天抽出一些空闲时间来补一补,好好理解一下递归。我们为什么要学递归呢?一些程序大佬给我们的解释是,代码能更简洁,清晰,行吧,我们来看看,怎么用递归来解决问题,递归是怎么是代码简洁,结构清晰的。。。
问题描述:有一支股票的涨跌天数和与其相对应的价格 int[] priceArray = { 10, 24, 51, 64, 78, 59, 3, 45, 64, 24, 63 },我们用两个数组来存储,得到第三个数组股票的波动数组,求解从哪一天买入,哪一天卖出能获得最大的利润。利用股票问题深入了解递归
uing System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 练习
{
class Program
{
static void Main(string[] args)
{
int[] priceArray = { 10, 24, 51, 64, 78, 59, 3, 45, 64, 24, 63 };//股票价格数组
int[] fluctuationArray = new int[priceArray.Length - 1];//股票波动数组
for(int i = 1;i < priceArray.Length; i++)
{
fluctuationArray[i - 1] = priceArray[i] - priceArray[i - 1];
}
int startIndex