最新文章列表

算法学习-动态规划

最近发现自己在算法的方面真的是犹如小学生一般,跟公司的从一些更厉害学校毕业的人都不在一个水平面上,唉,觉得以前大学期间真心是一个学渣,虽然软件工程方面还可以,但是时候该补一补关于算法的相关知识了。学习算法的同时,也顺带着学习python脚本语言。动态规划动态规划是通过组合子问题的解来解决整个问题的,通过将问题分解成多个相互不独立的子问题,例如0/1背包问题,对每个子问题求解一次,并将其结果保存到一 ...
brandNewUser 评论(0) 有1071人浏览 2014-10-25 23:33

搞定编程大赛必知哪10个算法?

再没有比算法更让人头疼的东西了吧!          前两天参加了一个编程大赛http://www.ijiami.cn/newsInfo?id=519&v=2,有感于算法,所以整理了这篇关于编程竞赛的10个算法。          动态规划(DP)似乎占据了大部分的编程竞赛题目,乃至三分之一。当然,DP也不是一个学一次就Ok的单一算法。
七波223 评论(2) 有742人浏览 2014-10-22 10:31

动态规划算法介绍

一、基本概念     动态规划过程是:每次决策依赖于当前状态,又随即引起状态的转移。一个决策序列就是在变化的状态中产生出来的,所以,这种 ...
blue2048 评论(0) 有854人浏览 2014-10-14 16:21

组合问题 之 罗列特定和的数字组合方式

package com.test.algorithm.dp; import java.util.HashSet; import java.util.Set; /** * @author hawkinswang * * 01背包问题:在指定数组中挑选任意组合,让它们的和等于一个特定值,列出所有组合方式 * 使用动态规划方法解决,状态转移方程 ...
623deyingxiong 评论(0) 有1632人浏览 2014-04-12 22:25

动态规划算法求解硬币找零问题(Java)

详见: http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytp97  动态规划的基本思想是将待求解问题分解成若干个子问题,先求解子问题,并将这些子问题的解保存起来,如果以后在求解较大子问题的时候需要用到这些子问题的解,就可以直接取出这些已经计算过的解而免去重复运算。保存子问题的解可以使用填表方式,例如保存在数组 ...
grefr 评论(0) 有1400人浏览 2014-04-11 14:25

【转】Java动态规划 实现最长公共子序列以及最长公共子字符串

详见: http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytp96 经常会遇到复杂问题不能简单地分解成几个子问题,而会分解出一系列的子问题。简单地采用把大问题分解成子问题,并综合子问题的解导出大问题的解的方法,问题求解耗时会按问题规模呈幂级数增加。 为了节约重复求相同子问题的时间,引入一个数组,不管它们是否对 ...
grefr 评论(0) 有3082人浏览 2014-04-11 14:04

动态规划-01背包问题

在M件物品取出若干件放在空间为W的背包里,每件物品的体积为W1,W2……Wn,与之相对应的价值为P1,P2……Pn。求出获得最大价值的方案。 注意:在本题 ...
gaotong1991 评论(0) 有2680人浏览 2014-04-06 22:24

背包之01背包、完全背包、多重背包和混合背包

01背包(ZeroOnePack): f[i][v]=max{f[i-1][v],f[i-1][v-c[i]]+w[i]} 完全背包(CompletePack): f[i][v]=max{f[i-1][v-k*c[i]]+k*w[i]|0 多重背包(MultiplePack): f[i][v]=max{f[i-1][v-k*c[i]]+k*w[i]|0 混合背包 for i=1..N ...
hasayake0302 评论(0) 有424人浏览 2014-01-26 20:37

Java 计算两个字符串的相似度

问题 许多程序会大量使用字符串。对于不同的字符串,我们希望能够有办法判断其相似程度。我们定义了一套操作方法来把两个不相同的字符串变得相 ...
Josh_Persistence 评论(0) 有10579人浏览 2013-11-23 14:06

[动态规划] 数字三角形问题(一维数组实现)

数字三角形问题:一个数字三角宝塔。设数字三角形中的数字为不超过100的正整数。现规定从最顶层走到最底层,每一步可沿左斜线向下或右斜线向下走。假设三角形行数小于等于100.编程求解从最顶层走到最底层的一条路径,使得沿着该路径所经过的数字的总和最大,输出最大值。 例如一个行数为5的三角形如下:                7              3   8            8   1   ...
MouseLearnJava 评论(0) 有4570人浏览 2013-10-24 21:30

sicily1010. Zipper

1010. Zipper Constraints Time Limit: 1 secs, Memory Limit: 32 MB Description Given three strings, you are to determine whether the third string can be formed by combining the characters in the ...
linxiaoty 评论(0) 有895人浏览 2013-08-18 08:57

hdu 1158 Employment Planning (动态规划)

题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1158    解题报告:自我感觉这道题目的状态方程不太容易。 刚开始用一维的搞,这么也得不到正确答案,后来想有月份、人数,应该用二维的。  首先雇主要在第n月花钱最少,一定是在第n-1月花钱也是最少,一定具有最有子结构,可以想到动态规划; 如果第n个月的需要的人数比第n-1个月的多,则需要 ...
ren_hui 评论(0) 有1163人浏览 2013-08-12 15:32

hdu 1081 To The Max (动态规划)

题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1081解题报告:求最大的矩阵和的问题,可以转化为最大连续子序列和的模型,只不过这个是一个二维的问题。如何转化是关键:我们可以把每一项变成前面多项的和,通过相减计算每个子矩阵。在求解的时候竖着求解,这样子问题就转换为1维求解最大连续子序列和的问题。给一组参考数据:4-3 -7 -1 -2-3 -4 - ...
ren_hui 评论(0) 有993人浏览 2013-08-10 21:30

uva11285 uvalive3983 Hackers' Crackdown

uva11285 uvalive3983 Hackers' Crackdown // AC // A.myc #include<iostream> #include<cmath> #include<stdio.h> #include<string.h> using namespace std; const int maxn=1000 ...
A.myc 评论(0) 有513人浏览 2013-07-31 06:39

再谈大楼扔鸡蛋的问题

这道题是说,100层楼,两个一模一样的鸡蛋,某层之上扔鸡蛋就会碎。问要测试多少次才能找出这层楼来。我曾经在去年初的这篇文章里面讨论过这个问题的解法,因为只想记录一下思路和讨论过程,写得很简略。现在,我想重新整理一下这个问题,再稍稍扩展和挖掘一下。希望可以用尽可能清晰易懂的描述,把这个问题的前后说清楚。 现在只有两个鸡蛋,而算法必须是可行的,就是说要能找出这一层来,所以你得假设你的运气最差,这就意 ...
RayChase 评论(0) 有3744人浏览 2013-05-19 22:48

[DP]hdoj 4502:吉哥系列故事——临时工计划

题意: http://acm.hdu.edu.cn/showproblem.php?pid=4502   大致思路:     退役狗果然弱爆了,这么简单的转移都没想到,求bs。   #include<iostream> #include<cstring> #include<cstdio> using namespace std; int nu ...
暴风雪 评论(0) 有1475人浏览 2013-04-01 23:58

分治策略(3篇)之动态规划

                        第二篇:分治法之动态规划 目的:本篇博客并不具体的讨论某一个算法,而是将同类型的问题集中展示,从而对分治法有       更进一步的认识。 目录: 斐波那契数列问题 最长公共子序列 字符串相似度问题 最优二叉搜索树问题 0-1背包问题   问题1:斐波那契数列的问题
十三月的 评论(8) 有4128人浏览 2013-03-31 23:44

动态规划通用算法的java实现

谁说动态规则算法不能通用?我写了个通用算法,不知道能否通用,欢迎交流qq 15367481。 使用示例: //定义状态 State a=new State("a"), b1=new State("b1"), b2=new State("b2"), b3=new State("b3&quo ...
xinglijun1973 评论(0) 有1420人浏览 2013-03-05 21:51

最长不下降子序列O(nlogn) --动态规划

题目: 设有一个正整数的序列:d1,d2,…,dn,对于下标i1<i2<…<im,若有di1≤di2≤…≤dim  则称存在一个长度为m的不下降序列。    例如,下列数列       13  7  9  16  38  24  37  18  44  19  21  22  63  15    对于下标i1=1,i2=4,i3=5,i4=9,i5=13,满足13<16<38< ...
synchronized_lala 评论(0) 有2115人浏览 2012-11-12 16:40

最长上升子序列-动态规划

题目:  设有一个正整数的序列:d1,d2,…,dn,对于下标i1<i2<…<im,若有di1≤di2≤…≤dim  则称存在一个长度为m的上升序列。    例如,下列数列       13  7  9  16  38  24  37  18  44  19  21  22  63  15    对于下标i1=1,i2=4,i3=5,i4=9,i5=13,满足13<16< ...
synchronized_lala 评论(0) 有1150人浏览 2012-11-12 15:53

最近博客热门TAG

Java(141741) C(73643) C++(68602) SQL(64557) C#(59604) XML(59131) HTML(59042) JavaScript(54916) .net(54782) Web(54511) 工作(54116) Linux(50906) Oracle(49861) 应用服务器(43285) Spring(40811) 编程(39452) Windows(39380) JSP(37540) MySQL(37266) 数据结构(36420)

博客人气排行榜

    博客电子书下载排行

      >>浏览更多下载

      相关资讯

      相关讨论

      Global site tag (gtag.js) - Google Analytics