9月开始找工作,还有一个半月,加油。7.17 -8.1:extra: 操作系统、计算机网络复习、数据库7.17- 9.1:JAVA知识巩固加深,并发编程、设计模式、基础语法写代码: leetcode每天3题,每道题做完要看最优解法,并且自己手动实现一遍linux、Openstack、docker知识...
分类:
其他好文 时间:
2015-07-17 13:49:42
阅读次数:
117
1 单纯形法(1) 单纯形法是解线性规划问题的一个重要方法。
其原理的基本框架为:
第一步:将LP线性规划变标准型,确定一个初始可行解(顶点)。
第二步:对初始基可行解最优性判别,若最优,停止;否则转下一步。
第三步:从初始基可行解向相邻的基可行解(顶点)转换,且使目标值有所改善—目标函数值增加,重复第二和第三步直到找到最优解。
(2) 用程序进行运算前,要将目标函数及约束方程变成标准形...
分类:
编程语言 时间:
2015-07-16 22:21:10
阅读次数:
286
图片来源:网络 无论你是在寻找最佳的应聘者还是最合适的配偶,找到那个“对”的人,从来都不是件容易的事,因为你不知道其余的人是怎样的,或者相比于你已经见到的人是怎样的。 幸运的是,一个叫“寻找最优解”(optimal-stopping theory)的数学理论可以帮助你找到最适合的那个人。 ...
分类:
其他好文 时间:
2015-07-13 17:36:59
阅读次数:
155
题意:给出n个位置,需要将m头牛放在这些位置中,使得所有相邻两头牛间的最小距离最大,求最大的最小距离;思路:二分枚举最优解。先将所有位置排序,从最大总距离枚举到0,若满足差值大于等于枚举值的位置个数大于等于m,则当前枚举值为最优解。#include#include#includeusing name...
分类:
其他好文 时间:
2015-07-13 00:42:43
阅读次数:
499
连续型Hopfield在matlab中没有直接的工具箱,所以我们们根据Hopfield给出的连续行算法自行编写程序。本文中,以求解旅行商问题来建立Hopfield网络,并得到解,但是该解不一定是最优解,用Hopfield得到的解可能是次优解,或没有解。直接上问题:8个城市的坐标:0.100000.....
分类:
其他好文 时间:
2015-07-12 23:19:01
阅读次数:
226
和前面一样,要注意状态的枚举顺序,边界是d[i+1][i] = 0 和d[i][i] = 1 ,所以枚举的区间应该从小到大,大区间依赖于小区间的最优解 。
然后就是状态的转移,是如何转移的呢? d[i][j]表示字符串i~j的最优解,那么先检查i与j是否匹配,如果匹配,状态转移可以转移到d[i+1][j-1] 。 无论是否匹配,状态还都能转移到子区间上:d[i][k] 和 d[k+1][j] ...
分类:
其他好文 时间:
2015-07-12 17:30:25
阅读次数:
101
类似于最优矩阵链乘,将长区间划分成段区间求解,换句话说:长区间依赖于段区间 。 因此如果利用二重循环递推的话,枚举的顺序应该是木棍的长度从小到大,因为长区间依赖于短区间的最优解 。 所以动态规划的重点我认为就是对状态的定义和动态规划的方向, 状态的定义要确保覆盖所有状态,规划的方向要遵循一个状态依赖于另一个早已解决的状态。 所以该题有两种解决方法:记忆化搜索和递推 。
我分别用这两种方...
分类:
其他好文 时间:
2015-07-12 14:21:36
阅读次数:
226
和上一题 “照明系统设计”类似,我们可以逐步递推出最优解,d[i] 表示1~i个字符的最优解,那么d[i] = min(d[i],d[j] + 1)|当s[j+1~i]为回文串时。
大家可以自行打印d这个数组,来体会一下状态的转移情况。
代码如下:
#include
using namespace std;
const int maxn = 1000 + 10;
const int INF ...
分类:
其他好文 时间:
2015-07-11 16:46:42
阅读次数:
121
该题以电压v,使得枚举有序化,对于每一种灯泡,怎么判断是不是要用它呢? 如何形成递推呢?
我们知道,递推就是要用到之前早已存好的值来确定当前最优解,所以我们用d[i]表示用1~i种灯泡的最小费用。
由于每种灯泡要么使用,要么被别的灯泡替代,所以d[i] = min(d[i],d[j] + (s[i]-s[j])*a[i].c + a[i].k); 其中j
由于第n个灯泡电压最高,无法被...
分类:
其他好文 时间:
2015-07-11 13:42:01
阅读次数:
110
动态规划问题,定义个数组,将现阶段的所有走过的步数的最优解保存到数组中对应下标处。在进行下一步的时候,通过调用已知数组和当前节点的情况进行讨论,做出决策。 1 class Solution { 2 public: 3 int rob(vector& nums) { 4 int...
分类:
其他好文 时间:
2015-07-08 12:24:47
阅读次数:
130