算法复习

算法复习

今天class work好费脑子,阿巴……我作死答应要写递归的┭┮﹏┭┮。。

递归

如果有《算法笔记》的见P113,没有的大家看一哈,举个栗子,n的阶乘,用递归来算。我们都知道n!=(n-1)!*n,那就可以把这题转换成求解n-1的问题。如果用F(n)表示n!,那递归式就是F(n)=F(n-1)*n,不懂得还是先去恶补递归吧。。
然后根据这个式子,我们再减小规模,就是F(n-1)=F(n-2)*n,这样以此类推,一直减小规模,那就以F(0)=1为递归边界,当规模减小至n=0时“回头”。简单的递归代码:

int F(int n) {
     
	if(n==0) return 1;
	else return F(n-1)*n;
}
int main() {
     
	int n;
	scanf("%d",&n);
	printf("&d\n",F(n));
	return 0;
}

若有不足欢迎指出
然后就不举别的栗子了,毕竟栗子好重,举不动了啊哈哈哈~后面有时间回刷水题的时候也许大概可能会带着写写。

贪心

今天讲一下贪心的定义,好晚了啊~
贪心就是说在当前状态下局部优化的策略,来使全局达到最优结果。明天给你们举栗子~~((ps.前天的阅读量到了六百多啊啊啊,我好快乐,昨天那篇也有一百多阅读量了,希望大家多支持哇嘿嘿
我一定是最关心小萌新的蒟蒻了叭~还是那句话awa,祝大家全都AK哦QAQ。((今天又是水极了的一天

你可能感兴趣的:(算法,c++,算法)