动规基础:最长递增子序列的三种解法。附详解和代码。第一种:转化成LCS问题求解O(n*n)。第二种:设d[i]为以第i个元素结尾的最长递增子序列的长度O(n*n)。第三种:二分查找优化O(nlogn)。...
分类:
其他好文 时间:
2014-05-10 08:36:18
阅读次数:
462
实现要点:1.组合模式采用树形结构来实现普遍存在的对象容器,从而将“一对多”的关系转化“一对一”的关系,使得客户代码可以一致地处理对象和对象容器,无需关心处理的是单个的对象,还是组合的对象容器。2.将“客户代码与复杂的对象容器结构”解耦是组合模式的核心思想,解耦之后,客户代码将与纯粹的抽象接口——而...
分类:
其他好文 时间:
2014-05-08 13:03:35
阅读次数:
355
设计模式就如同搭积木,这几种关系就如同积木,设计模式的作用无非就是为了将这几种关系组合,最大化降低程序耦合度,使代码结构达到最优,便于应对以后的需求变更。...
分类:
其他好文 时间:
2014-05-07 21:50:58
阅读次数:
576
十进制小数转化为二进制小数的方法:对十进制小数乘以2得到的整数部分和小数部分,整数部分即是相应的二进制数码,再用2乘小数部分,结果再取整数部分,如此反复,直到小数部分为0或达到精度为止。第一次得到的为最高位,最后一次得到为最低位。如计算+0.52的二进制:1、0.52*2=1.04
(取整得到1)2...
分类:
其他好文 时间:
2014-05-07 20:37:14
阅读次数:
311
包括:i.任意进制转化为十进制((num=base#number))
【base和number必须一致,是同一种进制】ii.十进制转化为任意进制`echo "obase=进制;值"|bc` 和`echo "值 进制 o
p"|bc` 【这里的值代表十进制数字】iii.任意进制互转;有了i和ii就可以...
分类:
其他好文 时间:
2014-05-07 16:40:14
阅读次数:
272
将行中连续的' . '当作X集的一个点,列中连续的’ . ‘看成Y集中的一个点,然后把每一个’ . ‘看成一条边,连接Xi,Yj。
则问题转化成求此二分的最大匹配数。每找到一条匹配边的意义是找到了一个点放置一个,并且覆盖了所在的连续的行和列。
所以答案即为此二分图的最大匹配。
#include
#include
#include
#include
#include
#inclu...
分类:
其他好文 时间:
2014-05-07 16:33:04
阅读次数:
283
修正单纯性法
代码如下:
舍去了输入转化的内容,主要包含算法关键步骤。
public class LPSimplexM {
private static final double inf = 1e9;
private int n; // 约束个数
private double[][] A; // 输入函数参数
private do...
分类:
编程语言 时间:
2014-05-07 11:54:08
阅读次数:
547
昨晚Debug了好久始终找不出哪里错了,今早再一看发现自己已荣升逗比Beta 2.0 Version.
个人感觉此题为HDU 4003 的弱化版。
把每棵子树都看成一类商品,在每类商品中至多选一件。则问题转化为最基本的分组背包问题。
dp[s][c][k] c == 1时,表示在s结点不返回时走K的最大收益,c == 0时,表示在s结点重新返回时走k步的最大收益。
可以dfs从底到顶更新d...
分类:
移动开发 时间:
2014-05-07 04:52:22
阅读次数:
500
搞点多维分析,糙快猛的解决方案就是使用ROLAP(关系型OLAP)了。数据经维度建模后存储在MySQL,ROLAP引擎(比如开源的Mondrian)负责将OLAP请求转化为SQL语句提交给数据库。OLAP计算分析功能导致MySQL需要进行较多复杂SQL查询,性能调优必不可少,本文总结了一些实用原则。
OLAP特点
OLAP的典型应用包括复杂动态报表,需要支持钻取(上卷和下钻)、切片、切块和旋转...
分类:
数据库 时间:
2014-05-07 03:19:42
阅读次数:
580
本篇内容主要包括:1.能够转化为并行循环的条件2.并行For循环的用法:Parallel.For3.并行ForEach的用法Parallel.ForEach4.并行LINQ(PLINQ)的用法AsParallel()5.并行中断与并行停止的用法与区别6.外部控制循环取消的方法(Break,Stop)...
分类:
Web程序 时间:
2014-05-07 00:33:18
阅读次数:
441