0 1 背包问题递归求满足两个条件的子集树#include#define N 3#define C 15int w[N]={10,8,5};int v[N]={5,4,1};int x[N]={0,0,0};int cur_weight = 0;int cur_value = 0;int best_...
分类:
其他好文 时间:
2015-09-30 18:03:37
阅读次数:
138
写法分类: --|递归:代码简便,耗费资源 --|迭代 :相反解空间分类: --|子集树所给的问题是从n个元素的集合S中找出满足某种性质的子集时,相应的解空间成为子集树。如0-1背包问题,从所给重量、价值不同的物品中挑选几个物品放入背包,使得在满足背包不超重的情况下,背包内物品价值最大。它的解...
分类:
其他好文 时间:
2015-09-30 18:00:40
阅读次数:
120
问题描述:要在8*8的国际象棋棋盘中放8个皇后,使任意两个皇后都不能互相吃掉。规则是皇后能吃掉同一行、同一列、同一对角线的棋子。如下图即是两种方案:、解决方案:8*8的棋盘要摆放8个皇后,且不能同行同列同对角线,那么每行必定会有一个皇后。我们可以设一个数组a用来存放每一行皇后的位置,元素值表示第几列...
分类:
其他好文 时间:
2015-09-25 18:35:38
阅读次数:
237
自己刚刚学习了一下动态规划的思想,属入门级,总结如下:Dynamic 动态规划算法通常基于一个或多个初始状态及一个递推公式(状态转移方程)。当前子问题的解将由上一次子问题(或前面某一次)的解推出。使用动态规划来解题只需要多项式时间复杂度, 因此它比回溯法、暴力法等要快许多。 动态规划中,我们要...
分类:
其他好文 时间:
2015-09-20 11:46:16
阅读次数:
130
WriteaprogramtosolveaSudokupuzzlebyfillingtheemptycells.Emptycellsareindicatedbythecharacter‘.‘.Youmayassumethattherewillbeonlyoneuniquesolution.Asudokupuzzle......anditssolutionnumbersmarkedinred.解法:回溯法,依次每个需填写的点填入‘1_9‘并验证,行,列,对..
分类:
其他好文 时间:
2015-09-14 12:26:20
阅读次数:
222
因为给定了a-z这个范围,并且字符串的添加和查找符合Trie的常用方法,因此考虑使用Trie这种数据结构。
然后和普通的Trie不同的是,要匹配正则表达式中的“.”,也就是说在这一层是无法判断沿着拿个结点向下走的,所以要循环这一层的结点,只有这一层所有结果失败后才能返回false,剩下的递推。所以我们采取Trie+回溯法。
代码中的searchHelp函数是专门用于回溯的,要求会回溯的掌握比较...
分类:
其他好文 时间:
2015-09-04 14:23:13
阅读次数:
170
Thinking about it: 题目意思有点类似于八皇后,但没有了斜方向上的限制,而多了一个摆放区域的限制。因为题目中的N最大达5000,不敢贸然采用回溯法。可以得知,题中每个Rook的摆放区域是一个矩形,而且每个在摆放时,x,y轴其实是相互独立的,如何摆放x轴的位置并不影响y轴。因此可以先....
分类:
其他好文 时间:
2015-09-04 14:21:15
阅读次数:
296
很基础的一道DFS,开始的时候觉得可能剪枝要处理的好一些,于是我的剪枝是:如果当前的值合适,那么剩下的和一定要大于剩下的个数*1&&小于剩下的个数*9,这虽然不是最优,但是处理起来比较简单,没想到样例只有18组,跑了0ms,数据太水了。
class Solution {
private:
vector >ans;
vector v;
public:
void dfs(i...
分类:
其他好文 时间:
2015-09-03 01:52:27
阅读次数:
167
题目描述 迷宫是一个二维矩阵,其中1为墙,0为路,入口在第一列,出口在最后一列。
要求从入口开始,从出口结束,按照 上,下,左,右 的顺序来搜索路径...
分类:
其他好文 时间:
2015-08-31 11:57:38
阅读次数:
251
【问题描述】自然数的拆分:任何一个大于1的自然数N,总可以拆分成若干个自然数之和,并且有多种拆分方法。试求 n的所有拆分。例如自然数5,可以有如下一些拆分方法:5=1+1+1+1+15=1+1+1+25=1+2+25=1+45=2+3算法一用回溯法来实现针对所给问题,定义问题的解空间;如本题对5的拆...
分类:
其他好文 时间:
2015-08-21 19:29:00
阅读次数:
127