- 博客(5)
- 收藏
- 关注
原创 递归算法
定义:函数自己调用自己分布:1.通过题目分析数学公式(如斐波拉契数列为:f(n)=f(n–1)+f(n–2) 2.确定出口(一般根据递推式确定或题目给出) 如由斐波拉契定义可得f(1)=1 f(2)=1 若递推式为f(n)=f(n-m)+f(n-g) 则出口为f(m)和f(g) ...
2018-07-05 21:29:07
157
原创 回溯算法
回溯算法排列问题:n里面选择m个数 与顺序没关 如(1,2)(2,1)是不同的排列回溯函数分步:1.出口:step>m(已经选了m个数了)2.每步的选择:1~n且未被访问过(!标记数组[i])3.将标记数组[i]置为true 并记录该元素4.运行step+1的该函数5.将标记数组[i]置为false回溯函数模型:void f(int step)//正在进行第step步 { ...
2018-07-05 21:29:03
263
原创 深度迭代算法
每日总结迭代加深搜索算法:定义:枚举或二分试探步数适用于:求最小步数、最优步数的回溯类问题 法一:for循环从1开始枚举maxstepbool ok=false; int maxstep; void f(int step) { if(step>maxstep) { if(满足出口) { ok=true; ...
2018-07-05 21:28:56
1542
原创 贪心算法
贪心算法http://newoj.cqyz.cn/contest/46/problems定义:局部最优达到全局最优 1.选择不相交区域2.区间覆盖问题按照结束时间排序,以此考虑每个活动,如果没有和已经选择的活动冲突,选。否则不选分步:1.结束时间排序2.用一个变量right存储已经覆盖到那个位置 初始值为第一个元素的最右端3.如果下一个区间左端点>或>=right,则不相交,ans++...
2018-07-05 21:28:46
797
原创 【USACO1.2.2】方块转换
【USACO1.2.2】方块转换【问题描述】 一块 N*N 正方形的黑白瓦片的图案要被转换成新的正方形图案。写一个程序来找出将原始图案按照以下列转换方法转换成新图案的最小方式: 1:转90度:图案按顺时针转90度。 2:转180度:图案按顺时针转180度。 3:转270度:图案按顺时针转270度。 4:反射:图案在水平方向翻转(以中央铅垂线为中心形成原图案的镜像)。 5:组合...
2018-04-06 20:58:33
893
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅