摘要: 不相交集合的操作 一些应用涉及将n个不同元素分成一组不相交的集合,常进行两种操作:寻找包含制定元素的唯一集合以及合并两个集合。操作进行以下定于: MAKE-SET(x)建立一个新的集合,仅含有x UNION(x,y)将包含x和y的两个集合合并成一个新的集合,删除原本的集合 FIND-SET(x)返回 阅读全文
posted @ 2018-08-04 19:03 GrayWind 阅读(242) 评论(0) 推荐(0) 编辑
摘要: 斐波那契堆是具有最小堆序的有根树的集合,也就是集合中的每棵树都具有父结点的关键字小于或等于子结点的关键字。 对于每一个结点x,主要有以下属性: 名称 说明 记作 关键字 结点存储的值 x.key 父结点 结点的父亲 x.p 左兄弟 结点的左兄弟 x.left 右兄弟 结点的右兄弟 x.right 孩 阅读全文
posted @ 2018-08-02 20:15 GrayWind 阅读(1045) 评论(0) 推荐(0) 编辑
摘要: String直接继承Object 含有一个char[] value,还有一个int hash默认值为0 new String()的构造产生的是一个值为””的字符数组 String(char value[], int offset, int count)当count=0且offset<=value.l 阅读全文
posted @ 2018-08-01 12:54 GrayWind 阅读(2131) 评论(0) 推荐(0) 编辑
摘要: 贪心算法(greedy algorithm)是指,在每一步都做出当时看起来最佳的选择,也就是局部最优的选择,期望这样的选择能够导向全局最优解。所以并不是所有的问题都能得到全局最优解。 典型的例子如分数背包问题:背包容量为50kg,有三个商品分别是重60元/10kg、100元/20kg、120元/30 阅读全文
posted @ 2018-07-31 17:24 GrayWind 阅读(302) 评论(0) 推荐(0) 编辑
摘要: 动态规划指的是一个问题可以拆分成多个小的最优子问题,并且这些子问题具有重叠,典型的如斐波那契数列:f(2)=f(1)+f(0),f(3)=f(2)+f(1),f(4)=f(3)+f(2),若使用简单的递归算法求f(4),则f(2)会被计算两次,当计算f(n)时需要计算f(n-1)和f(n-2)而f( 阅读全文
posted @ 2018-07-24 21:19 GrayWind 阅读(880) 评论(0) 推荐(0) 编辑
摘要: 最近尝试了一下SpringBoot,发现在controller和service数量相同的时候,比之前用Tomcat启动SpringMVC快了一大半,配置也更少了,很多东西不去重新覆盖设置的话直接会以默认配置启动。 首先搭建一个同时支持RESTful和传统MVC的服务。完成后的项目目录结构如下: 建一 阅读全文
posted @ 2018-03-25 10:09 GrayWind 阅读(7249) 评论(0) 推荐(0) 编辑
摘要: Java应用要连接数据库需要先通过jdbc与数据库之间产生connection,然后通过sql语句产生statment,再执行这个statment查询的到ResultSet返回给应用,应用解析ResultSet获得Java支持类型的结果。 这里存在以下几个问题: 所以要避免这种情况就有了连接池。连接 阅读全文
posted @ 2018-03-10 15:47 GrayWind 阅读(2896) 评论(0) 推荐(0) 编辑
摘要: 作为关系型数据库的代表,开源的MySQL是基本是某个开发人员必学的,也是个人开发最适合的数据库——因为免费。 首先是去官网下载并安装MySQL。自打MySQL被甲骨文收购了之后,要先去Oracle官网注册个账号,不然不给你下载。注册就不说了,根据操作系统下载个MySQL Community版本。我这 阅读全文
posted @ 2018-02-24 20:37 GrayWind 阅读(339) 评论(0) 推荐(0) 编辑
摘要: 今天来尝试一下搭建基于SpringMVC的RESTful标准的后端服务。 首先,什么是MVC?M-model,模型,指业务数据层,具体一点就是业务逻辑与数据库的交互;V-view,视图,用来展示数据,传统SpringMVC中控制器有返回类型ModelAndView,即返回含有数据模型与页面视图的js 阅读全文
posted @ 2018-02-18 21:33 GrayWind 阅读(3948) 评论(0) 推荐(0) 编辑
摘要: maven作为jar包管理工具在开发中是非常重要的。通过maven连接的仓库,只需要增加配置就可以自动从仓库中下载jar包并添加至工程,而不需要一个个去搜索,找到官网下载到本地,在从build path里面一个个添加。 首先还是安装,去官网下载一个压缩包并解压,有如下文件然后可以新建一个文件夹war 阅读全文
posted @ 2018-02-16 22:31 GrayWind 阅读(579) 评论(0) 推荐(0) 编辑