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²,根据随机点算出圆的面积,然后通过公式算出π。