自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 UVA 8177 区间DP

OJ:https://cn.vjudge.net/problem/UVALive-8177简单翻译:给你一堆石头,要求你每次只能将L到R堆石头合并成一堆,每个石头都有一个时间,每次合并的时间是合并的这些石头的时间总和。让我们求出将n个石头合并为一堆需要的最少的时间。区间dp,顾名思义,就是解决一些区间内最优值的问题,通常的时间复杂度为n^2 或者 n^3而区间dp的大致思路就...

2019-08-29 22:01:22 152

原创 数据库中,到底该不该使用外键

到底应不应该建立外键关系?我们首先要知道我们纠结的这个问题的本质是什么,其本质其实是数据一致性的问题。数据一致性是我们的目的,而建立外键只是我们维护数据一致性的一种手段。但是我们要知道,维护数据一致性可不止建立外键这一种方式。建立外键是在数据库层面进行数据一致性的维护,可以让我们在代码的编写过程中不要去考虑数据一致性的这种问题。但是在一些庞大的系统中,这种外键关系可能会非...

2019-08-29 16:32:33 1006

转载 Java 枚举源码分析

引言枚举类型是 JDK 5 之后引进的一种非常重要的引用类型,可以用来定义一系列枚举常量。在没有引入 enum 关键字之前,要表示可枚举的变量,只能使用public static final的方式。 1234 public staic final int SPRING = 1;public staic final int SUMMER = ...

2019-08-28 19:27:54 616

转载 四种常见的 POST 提交数据方式

HTTP/1.1 协议规定的 HTTP 请求方法有 OPTIONS、GET、HEAD、POST、PUT、DELETE、TRACE、CONNECT 这几种。其中 POST 一般用来向服务端提交数据,本文主要讨论 POST 提交数据的几种方式。我们知道,HTTP 协议是以 ASCII 码传输,建立在 TCP/IP 协议之上的应用层规范。规范把 HTTP 请求分为三个部分:状态行请求行、请求头、消息...

2019-08-28 17:29:26 250

转载 清除浮动的四种方式及其原理理解

本文转载:https://segmentfault.com/p/1210000011625576/read本文介绍了四种清除浮动的方法,并尝试解释其原理。在理解了各种清除浮动的原理之后,你会发现,很多清除浮动的方法本质上其实是一样的。掌握这些原理,相信你可以根据场景和需求,灵活运用原则发展出不同的清除浮动的方法,而不再死记或拘泥于文中提到的方法。一、为什么要清除浮动在讲清除浮动的...

2019-08-28 17:28:45 163

转载 BFC(块格式化上下文)

一、BFC 的概念1.规范解释块格式化上下文(Block Formatting Context,BFC)是Web页面的可视化CSS渲染的一部分,是布局过程中生成块级盒子的区域,也是浮动元素与其他元素的交互限定区域。2.通俗理解BFC 是一个独立的布局环境,可以理解为一个容器,在这个容器中按照一定规则进行物品摆放,并且不会影响其它环境中的物品。 如果一个元素符合触发 BFC 的条件...

2019-08-28 17:28:34 85

转载 url、href、src

一、URL的概念统一资源定位符(或称统一资源定位器/定位地址、URL地址等,英语:Uniform Resource Locator,常缩写为URL),有时也被俗称为网页地址(网址)。如同在网络上的门牌,是因特网上标准的资源的地址(Address)。二、URL的格式2.1 标准格式协议类型:[//服务器地址[:端口号]][/资源层级UNIX文件路径]文件名?查询2.2 完整格式...

2019-08-28 17:28:27 168

转载 HTML代码第一行的DOCTYPE声明

现在的各种前端开发工具都足够强大,支持插入模板代码,也就导致我们往往会忽略已经自动生成的代码,而代码的第一行 DOCTYPE 声明,就是最容易忽略的部分。一、DOCTYPEDOCTYPE 是 document type(文档类型的)的简写。1.1 DOCTYPE 的作用告诉浏览器需要通过哪一种规范(文档类型定义,DTD)解析文档(比如HTML或XHTML规范);二、DTDD...

2019-08-28 17:28:09 508

原创 A标签中通过href和onclick传递的this对象实现思路

想传递当前对象给一个函数,于是就将这个URL写成”JavaScript:shoControlSidebar(this)”,可是结果发现这并不可行,接下来为大家详细介绍下解决方法在blog的后台管理中允许为一个分类添加一个地址,但是不好添加onclick事件。想传递当前对象给一个函数,于是就将这个URL写成"Javascript:shoControlSidebar(this)",可是结果发现...

2019-08-28 17:27:54 319

转载 深入理解Java:内省(Introspector)

一些概念:  内省(Introspector)是Java 语言对 JavaBean 类属性、事件的一种缺省处理方法。  JavaBean是一种特殊的类,主要用于传递数据信息,这种类中的方法主要用于访问私有的字段,且方法名符合某种命名规则。如果在两个模块之间传递信息,可以将信息封装进JavaBean中,这种对象称为“值对象”(Value Object),或“VO”。方法比较少。这些信...

2019-08-28 17:24:49 159

原创 HDU 1043 广搜,优先队列,A*算法

HDU:http://acm.hdu.edu.cn/showproblem.php?pid=104315谜题已经有100多年历史了。即使不知其名,肯定也见过。它由15个滑动块组成,每个滑动块由数字1到15标记,并且被放在4x4大小的框框里面,缺失一个块。缺失的称之为x。谜题的目标就是将这些块有序的整理起来。如下图:1 2 3 45 6 7 89 10 11 12...

2019-08-24 11:31:35 279

原创 POJ 1155 树状DP

OJ:http://poj.org/problem?id=1155简单翻译:电视台转播节目。对于每个节点,如果其存在子节点,其子结点可能是用户,也可能是中转站。但是用户肯定是叶子结点。传到中转站或是用户都要花钱,如果是用户,则收钱。问在不亏本的前提下最多能有多少个用户看到节目。一开始看到这个题目想法完全错误,以为是简单DP问题,理解错了,想象成了求最大利润,后来发现并不是这么简单。...

2019-08-20 15:09:37 150

原创 UVA 11019 AC自动机-二维模式串匹配

OJ:https://cn.vjudge.net/problem/UVA-11019简单翻译:给你一个n*m的字符矩阵T,在给你一个x*y的字符矩阵P,问P在T中能完全匹配几个位置。这个题我们利用AC自动机解决首先要解决两个问题:1.要想P与T的的某个位置完全匹配,那么P的每一行要与T的对应的部分匹配,所以可以把P每一行看成模式串构造出AC自动机。然后在T中每一行逐一匹配...

2019-08-16 15:19:39 202

原创 sizeof与指针步长

开始学c语言的时候早早就接触到了sizeof这个关键字,当时就有一个让我非常困惑的问题,为什么sizeof能够测量出数组的长度,但是用sizeof去测量一个指向数组的指针,却只能得到指针值的长度。就像这样 int a[20]; int *b = a; printf("%d\n",sizeof(a)); printf("%d\n",sizeof(b));结...

2019-08-16 11:24:05 439

原创 Substring UVA - 11468 AC自动机加记忆化

OJ:https://vjudge.net/problem/UVA-11468简单翻译:给出一些字符和各自被选择的概率,随机选择L次之后,得到一个长度为L的随机字符串S,每次选择互相独立。给出K个模板串,计算S不包含任何一个模板串的概率,既S的任意一个子串都与K个模板串的任何一个相同分析:计算不包含模板串的概率,也就是要计算我们每次选择不会出现于模式串相同的子串的那些选择的概...

2019-08-14 22:57:48 137

原创 Dominating Patterns UVA-1449 AC自动机模板题

OJ:https://vjudge.net/problem/UVA-1449简单翻译:给定n个模式串和一个文本串T,只包含小写字母,你的任务是找出哪些模式串在T中出现的次数最多,输出对多的次数和出现最多的那个模式串。如果有多个次数相同的模式串,按输入顺序输出多个模式串。这种多模但是长度比较短的提直接应该就能想到是AC自动机, 该题也就是一个非常明显的模板题,只需要很小的变动,因为...

2019-08-13 09:34:03 201

转载 浏览器如何知道服务器的数据已经发送完毕?HTTP 协议中的 Transfer-Encoding

别说Content-Length了!!!!突然出现了这么个想法,在网上找到了解答,做一个记录Transfer-Encoding,是一个 HTTP 头部字段,字面意思是「传输编码」。实际上,HTTP 协议中还有另外一个头部与编码有关:Content-Encoding(内容编码)。Content-Encoding 通常用于对实体内容进行压缩编码,目的是优化传输,例如用 gzip 压缩文本...

2019-08-11 15:56:56 2880

转载 socket服务器地址复用

步骤一: 先看一下我用socket写的一个最简单服务器://文件名称: server.cpp#include <stdio.h>#include <unistd.h>#include <stdlib.h>#include <string.h>#include <sys/socket.h>#include <netin...

2019-08-10 15:15:40 630

原创 POJ-2376 简单的区间贪心问题

题目链接:http://poj.org/problem?id=2376简单翻译:给你一个长度为T的时间区间,区间从1开始,每一个时间点都需要有奶牛在工作,有N头奶牛,给你每个奶牛的工作区间,让你从这些奶牛中选一些奶牛,让其覆盖T这个时间区间,有两个条件1.每个时间点都需要有奶牛工作2.尽可能少的使用奶牛分析我们可以字节把题目中给定的条件就想象成一个一个的区间,让我们先...

2019-08-09 20:46:47 292

原创 我来讲讲KMP

KMP是一种单模匹配算法,高级就是了说白了就是用来匹配字符串的,假设给定一个长度为N的字符串T,然后给定一个长度为M的模板P。要求出字符串P是否是T的子串。最朴素的方法就是暴力法,依次判断每一个位置,判断其是否相等就可以了。这种情况,最坏的时间复杂度为0(M(N-M))时间复杂度有那么一点高,但是其实吧,对于随机的数据,这个简单的算法依然有很好的表现,也不容忽视。和暴力法相比来...

2019-08-05 08:30:36 265

原创 Remember the world LA 3942 - Trie

题目大意:给你一个由s个不同单词组成的一个长字符串,把这个字符串分解成若干个单词的连接(单词可以被重复使用)。问有多少种分配方式比如 s:abcd单词: a b cd ab有两种分解s的方法a + b + cdab + cd解题:首先看到这个题,其实很多也就能先到一个动态转移方程f(i) = sum(f(i-x)) f(i)表示以第i个字符结尾的子串有多上...

2019-08-03 16:42:16 258

原创 POJ 2411 - 状压DP详解

poj:http://poj.org/problem?id=2411这个题属于状态压缩的一个入门题,在讲解该题之间我们先简单的回顾一下状压DP。注意再看这个题之前,一定要对动态规划有一定的掌握状压DP:与传统的DP一样,状压DP也是定义状态,通过前一阶段的状态,推出当前阶段的状态。但是有时候状态特别多,但是每个状态的决策又非常少,我们如果用多维数组来表示状态会造成空间浪费,也可能会...

2019-08-01 17:17:09 1156 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除