- 博客(77)
- 资源 (1)
- 收藏
- 关注
原创 HDU 1069Monkey and Banana动规 最长子序列类问题
给你n个长方体,猴子踩着长方体上去房顶。问最高可以多高,上一个必须比下一个长方体接触面的长宽都要小。记录长宽高x,y,z调整一下变成x最小,y次之,z最大。,然后记录下来三种(x,y,z)(z,x,y)(y,x,z),保证z位置比y位置大,然后以z位置为基础排序。dp[i]=max(dp[i],dp[j]+height[i])用最长子序列的思想,如果满足上一个y小于值一个y,上一个z小
2015-04-12 11:45:16 234
原创 算法导论笔记(5)二叉搜索树
二叉查找树简介集合操作search搜索mininum寻找子树的最小key节点maxnum子树最大key节点predecessor前序寻找比此节点小的最大节点succesor后序insert插入delete删除c实现二叉查找树简介二叉查找树(Binary Search Tree),又被称为二叉搜索树。 它是特殊的二叉树:对于二叉树,假设x为二叉树中的任意一个结点,x节点包含关键字k
2015-04-08 09:43:46 514
原创 poj2236和poj1611并查集问题
POJ 2236问在计算机坏了,修复若干,问检测两台是否能连通#include #include #include using namespace std;const int N = 1005;struct Point{ int x,y;};Point p[N];int repaired[N];int pre[N],rank[N];
2015-04-01 18:49:01 318
原创 POJ 2240Arbitrage求正环
问题:通过汇率是否能够套利。解法:bellmanford可以求正负环,操作后看是否存在正环。#include <iostream>#include <cstdio>#include <cstring>#include <map>using namespace std;int N,M;map<string,int> V;typedef struct edge{ int from
2015-03-31 17:08:41 213
原创 为你的javascript提供脚本配置
一件我很固执和坚持的事就是,写代码时分离出来一个可定制的配置对象。我现在写的脚本一般都长这样:var module =function(){ config ={ CSS:{ classes:{ hover:'hover', active:'current', jsEnabled:'js'}, ids:{ conta
2015-03-31 16:27:53 260
原创 算法导论笔记(5)
算法导论笔记(5)算法导论笔记5中位数和顺序统计学基本概念选择问题描述最大值和最小值优化以期望线性时间做选择中位数和顺序统计学基本概念 顺序统计量:在一个由n个元素组成的集合中,第i个顺序统计量是值该集合中第i小的元素。例如最小值是第1个顺序统计量,最大值是第n个顺序统计量。中位数:一般来说,中位数是指它所在集合的“中间元素”,当n为奇数时,中位数是唯一的,出现位置为n/2;当n为偶数
2015-03-31 15:03:35 201
原创 poj3660Cow Contest求闭包传递
题意:给出牛的个数N,M个结果A和B(A能打败B)。问有多少头牛的rank已经确定。 思路:求每一头牛相关的边数(即度的大小,如果度的大小等于n-1,表示其他牛与他的关系已经确定,则这个牛的rank也就确定了)。如果有一个点,排名在它之前的和排名在它之后的点之和为n-1,那么它的排名就是确定的。#include <cstdio>#include <cstring>using namespace
2015-03-30 12:30:46 205
原创 算法导论笔记(4)
算法导论笔记(4)算法导论笔记4计数排序思想代码基数排序桶排序计数排序思想假设:n个输入元素中的每一个都是介于0到k之间的整数 基本思想:对每一个输入元素x,确定出小于x的元素个数 分析: O(n+k),当k=O(n)是,运行时间为O(n) 稳定排序假定输入是个数组A[1…n],length[A]=n,存放排序结果的B[1..n],提供临时存储区的C
2015-03-30 10:43:25 172
原创 poj1502迪杰斯特拉模板题
无向图的最短路问题,直接上模板可解。 唯一的问题是输入稍有些麻烦。 用stringstream ss; string s; getline(cin,s); ss.str(s); 可以解决 详情见http://www.ysg.name/?p=12#include <cstdio>#include <cstring>#include <sstream>#include <string
2015-03-26 13:00:03 305
原创 POJ2387求负权值
这道题是一个农场有F个神奇的农场 农场有N个点,M条路,W个虫洞。虫洞能回溯时间。 问能不能从某个点出发,通过路和虫洞,回到原点,时间比原来早。我第一思路是用bellman-ford算法,可以求是否出现负权值情况来做。 提交了好几次不对,发现坑爹之处是M条路是双向的,W个虫洞是单向的,理解了这个以后就能做了。它是要求某个点,所以要便利所有点来做bellman算法。#include <cstri
2015-03-25 23:38:01 320
原创 poj3268 dijkstra单源算法正反利用
题目大意:给出n个点和m条边,接着是m条边,代表从牛a到牛b需要花费c时间,现在所有牛要到牛x那里去参加聚会,并且所有牛参加聚会后还要回来,给你牛x,除了牛x之外的牛,他们都有一个参加聚会并且回来的最短时间,从这些最短时间里找出一个最大值输出dijkstra算法,最短路径只需要从x到i的最短路径代表他们返回的最短路径,然后将所有边反过来,再从x到i的最短路径代表他们来参加聚会的最短路径folyd算法
2015-03-25 21:05:35 200
原创 算法导论笔记(4)
快速排序思想代码总结优化根据分区大小调整算法三平均分区法随机化版本快速排序思想快排是分治的思想。分解: A[p…r]分成A[p…q-1]和A[q+1…r]两个数组,q的位置固定,每趟排序会有一个元素固定解决: 递归调用,对A[p…q-1]和A[q+1…r]排序合并: 原址排序,无需合并操作代码#include <cstdio>#include <algorithm>using n
2015-03-25 14:32:39 313
原创 POJ 2253Frogger求路径中最大权值最小路
题目大意: 给出两只青蛙的坐标A、B,和其他的n-2个坐标,任一两个坐标点间都是双向连通的。显然从A到B存在至少一条的通路,每一条通路的元素都是这条通路中前后两个点的距离,这些距离中又有一个最大距离。 现在要求求出所有通路的最大距离,并把这些最大距离作比较,把最小的一个最大距离作为青蛙的最小跳远距离。Floyd算法 用Floyd算法求出两两最短路,再求出从每个点开始的最长路,最后从这n个最长路
2015-03-24 23:34:40 437
原创 POJ 2387Til the Cows Come Home求不重边最短路
套模板的最短路问题,就是它是一个无向图,这是一个注意的地方。 用bellman-ford算法不用考虑重边。用迪杰斯特拉要考虑#include <cstdio>#include <cstring>#include <vector>#define INF 1<<29using namespace std;const int MAX = 2010;struct node{ int
2015-03-24 23:26:26 171
原创 算法导论笔记(3)
算法导论笔记(3)算法导论笔记3堆排序思想堆排序思想二叉堆被看成一个近似的完全二叉树,树上每一个结点对应数组中的一个元素。除了最底层以外,该树是完全充满的。 PARENT(i) return i/2 父节点 LEFT(i) return 2*i; 左节点 RIGHT(i) return 2*i+1 右节点分为最大堆和最小堆 最大堆满足A[PARENT(I)]>A[I] 最小堆满足
2015-03-24 09:58:16 251
原创 算法导论笔记(2)
算法导论笔记(2)算法导论笔记2分治策略代入法递归树法主方法最大子数组思想代码矩阵算法普通计算strassen算法分治策略代入法两个步骤: 1) 猜测解的形式 2) 用数学归纳法找出解真正有效的常数递归树法画出一颗递归树来得到好猜测。 在递归树中,每一个结点都代表递归函数调用集合中一个子问题的代价。我们将树中每一层内的代价相加得到一个每层代价的集合,再将每层的代
2015-03-23 12:53:53 382
原创 算法导论笔记(1)
算法导论笔记第二章算法导论笔记第二章插入排序代码总结分治思想归并排序代码总结选择排序代码总结插入排序代码void InsertSort(ElemType A[]){ for( i=2;i<A.length();i++){ A[0]=A[i]; for(j=i-1;i>=1;i++){ if(A[j]<A[0]){
2015-03-22 20:44:46 331
转载 使用STL的next_permutation函数生成全排列(C++)
1、碰到next_permutation(permutation:序列的意思)今天在TC上碰到一道简单题(SRM531 – Division Two – Level One),是求给定数组不按升序排列的最小字典序列(Sequence of numbers A is lexicographically smaller than B if A contains a smaller number o
2015-03-06 15:18:01 239
转载 HTTP的请求和响应详解
Expires、Cache-Control、Last-Modified、ETag是RFC 2616(HTTP/1.1)协议中和网页缓存相关的几个字段。前两个用来控制缓存的失效日期,后两个用来验证网页的有效性。要注意的是, HTTP/1.0有一个功能比较弱的缓存控制机制:Pragma,使用HTTP/1.0的缓存将忽略Expires和Cache-Control头。我们 这里以Apache2.0服务
2015-02-23 13:12:51 275
转载 string和stringstream用法总结
一、stringstring 是 C++ 提供的字串型態,和 C 的字串相比,除了有不限长度的优点外,还有其他许多方便的功能。要使用 string, 必須先加入这一行:#include 接下來要宣告一个字串变量,可以写成:string s;我们也可以在宣告的同时让它设成某个字串:string s="TCGS";而要取得其中某一個字元,和传统C 的字串
2015-02-06 15:59:57 153
原创 javascript语言精粹读书笔记
运用继承减少内存和时间消耗。var ob=s ||"unknow";相当于默认值var ob= s && s.img 防止出现s.img无值导致的typerror,结果为undefine对象永远不能被复制,而是被引用typedef flight.number //'number',但是在原型链中任何属性都会是'function'或者 用 object 具有带指定名称的属性,则 hasOwnProp
2015-01-09 21:46:31 212
转载 常用meta整理
转载自http://segmentfault.com/blog/ciaocc/1190000002407912 元素概要标签提供关于HTML文档的元数据。元数据不会显示在页面上,但是对于机器是可读的。它可用于浏览器(如何显示内容或重新加载页面),搜索引擎(关键词),或其他 web 服务。 —— W3School必要属性属性
2014-12-25 08:35:02 196
翻译 jQuery-Validation-Engine插件的使用(1)【译】
github上的地址https://github.com/posabsolute/jQuery-Validation-Engine简要jQuery validation engine是一个致力于解决在各浏览器下实现表单验证的javascript插件(IE 6-8, Chrome, Firefox, Safari, Opera 10). 插件提供了视觉提示,吸引用户关注。Va
2014-12-10 09:05:15 301
转载 PHP程序员如何理解IoC/DI【转载】
思想思想是解决问题的根本思想必须转换成习惯构建一套完整的思想体系是开发能力成熟的标志——《简单之美》(前言).“成功的软件项目就是那些提交产物达到或超出客户的预期的项目,而且开发过程符合时间和费用上的要求,结果在面对变化和调整时有弹性。”——《面向对象分析与设计》(第3版)P.236术语介绍——引用《Spring 2.0 技术手册》林
2014-12-09 20:28:54 201
转载 Linux下使用git命令及github项目
在linux下搭建git环境1、创建Github账号,https://github.com2、Linux创建SSH密钥:[plain] view plaincopyssh-keygen ##一直默认就可以了 3、将公钥加入到Github账户信息Account Settings->SSH Key4、测试验证是否成功。
2014-11-27 14:39:09 188
翻译 [译]没有jquery的动画
开发者有一个错误的理念,就是css是实现动画的唯一办法。这个谬误使的开发者拒绝使用js为基础的动画,即使他们需要维护复杂的css样式表来控制UI。还限制了他们向下兼容IE8,9和用js操作美妙物理运动的可能性。实际验证:JavaScript为基础的动画一般来说和css为基础的动画一样快,甚至有时更快。然而只有和jQuery’s $.animate()比起来,css做的动画速度还算可以,因为
2014-11-16 21:26:07 576
原创 uva201 Squares 记录
uva201 Squares 题解 Squares A children's board game consists of a square array of dots that contains lines connecting some of the pairs of adjacent dots. One part of the
2014-11-11 15:25:15 399
原创 组合数学:贝尔数
Bn是基数为n的集合划分数目。集合S的一个划分是定义为S的两两不相交的非空子集的族,它们的并是S。例如B3 = 5因为3个元素的集合{a, b, c}有5种不同的划分方法:{{a}, {b}, {c}}{{a}, {b, c}}{{b}, {a, c}}{{c}, {a, b}}{{a, b, c}}当3个元素时要
2014-11-11 08:58:37 673
原创 数据结构的练习:表达式求值
数据结构的练习:表达式求值#include #include using namespace std;const int Maxx = 100;typedef struct{ char data[Maxx];}operators;typedef struct{ float data[Maxx];}numbers;numbers nums;operators op
2014-11-10 22:57:11 607
转载 Javascript 文件的同步加载与异步加载
HTML 4.01 的script属性charset: 可选。指定src引入代码的字符集,大多数浏览器忽略该值。defer: boolean, 可选。延迟脚本执行,相当于将script标签放入页面body标签的底部,js脚本会在document的DOMContentLoaded之前执行。除IE和较新版本的Firefox外,其他浏览器并未支持。language: 已废弃。大部分浏览器
2014-10-16 19:38:08 450
转载 javascript常用方法函数收集
字符串长度截取function cutstr(str, len) { var temp, icount = 0, patrn = /[^\x00-\xff]/, strre = ""; for (var i = 0; i str.length; i++) { if (icount len - 1) {
2014-09-27 15:19:40 534
原创 线性表:顺序表实现
在此记录,方便以后学习回顾#include#includeusing namespace std;#define MaxSize 100typedef int ElemType;typedef struct{ ElemType data[MaxSize]; int length;}SqList;/*#define InitSize 100typedef struct{
2014-09-03 19:30:47 524
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人