4个基本算法思想:穷举、递推、递归、概率

4个基本算法思想:穷举、递推、递归、概率

内容:这4个基本算法思想是解决基础问题的很实用的方法。这里开始其实就已经是把所有需要的知识准备好了,之后就要开始解题了。此文为初级算法总结的子篇第六章——4个基本算法思想。

一、穷举

暴力破解,n层for循环。列举每一种可能。

例题:

鸡兔同笼:一个笼子有35个头,94只脚,问鸡和兔各有多少?

解题:鸡兔同笼

二、递推:

简单的动态规划,根据递推公式,累加。

例题:

斐波那契函数:F(n) =  F(n-1)+ F(n-2),随便给一个n,问F(n)为多少。

解题:斐波那契

3、普通递归:

化解问题逐渐变小(从n到1)

例题:求n的阶乘

public static int njiecheng(int n) {

    if (n==1) {
    return 1;
    }
    else {
    return n * njiecheng(n-1);
    }
}

4、概率:

使用random随机数,数量足够大的时候,得到近似结果。

例题:

计算圆周率π:π = S / R²,根据随机点算出圆的面积,然后通过公式算出π。

 

你可能感兴趣的:(java算法学习,算法学习)