自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 资源 (2)
  • 收藏
  • 关注

原创 MD5压缩算法

利用JavaAPI中自带的java.security,MessageDigest可以实现(同时需要注意的还有十六进制,char字符,byte字符转化问题) /** * MD5压缩算法 * @param source * @return */ public static String getMD5(byte[] source){ String s = null; cha

2016-04-23 15:54:22 1348

原创 利用HttpClient和HtmlParser构造简单爬虫

/** * 爬虫主方法入口类 * @author Qing * */public class Clawler { /** * 用种子url初始化url队列 * @param seeds */ private void initCrawlerWithSeeds(String[] seeds){ for(int i = 0; i < seeds.length; i +

2016-04-20 11:25:57 981

原创 HtmlParser编程

HtmlParser 提供了强大的类库来处理 Internet 上的网页,可以实现对网页特定内容的提取和修改。1.循环迭代所有节点/** * 迭代所有节点 * @param list * @param keyword */ public static void processNodeList(NodeList list, String keyword){ Simple

2016-04-20 11:14:28 324

原创 HttpClient4.5.2编程

HttpClient是Apache Jakarta Common下的子项目,用来提供高效的、最新的、功能丰富的支持HTTP协议的客户端编程工具包,并且它支持HTTP协议最新的版本和建议。HttpClient已经应用在很多的项目中,比如Apache Jakarta上很著名的另外两个开源项目Cactus和HTMLUnit都使用了HttpClient。下载地址:http://hc.apache.or

2016-04-20 10:57:51 4865

原创 单源多点最短路径-Dijkstra算法

Dijkstra算法使用了贪心算法思想,在实现Dijkstra算法的时候,维持一个节点的集合S,该集合节点到源点的最短路径都已经找到;而对于S集合之外的节点,放置在集合Q中,表示还没有找到最短路径的节点,每次添加到S的是离S最近的节点u,在将u加入S之后,对Q中节点更新其到源节点的距离。以下是java实现:首先构造Node对象:/** * Dijkstra算法的节点对象 * @auth

2016-04-16 21:52:52 4613

原创 贪婪算法-霍夫曼树 霍夫曼编码

哈夫曼树又称最优二叉树,是一种带权路径长度最短的二叉树。所谓树的带权路径长度,就是树中所有的叶结点的权值乘上其到根结点的 路径长度(若根结点为0层,叶结点到根结点的路径长度为叶结点的层数)。树的带权路径长度记为WPL= (W1*L1+W2*L2+W3*L3+...+Wn*Ln),N个权值Wi(i=1,2,...n)构成一棵有N个叶结点的二叉树,相应的叶结点的路径长度为Li(i=1,2,...n)。

2016-04-15 18:08:15 1395

原创 贪婪算法-最小生成树-Kruskal算法

最小生成树是找出图中包括所有结点的联通子图,使得其所有的边的权重之和最小。Kruskal 算法提供一种在 O(ElogV) 运行时间确定最小生成树的方案。其选择的贪心策略就是,每次都选择权重最小的但未形成环路的边加入到生成树中。其算法结构如下:将所有的边按照权重非递减排序;选择最小权重的边,判断是否其在当前的生成树中形成了一个环路。如果环路没有形成,则将该边加入树中,否则放弃。

2016-04-10 21:47:11 1974

原创 动态规划-最小二叉搜索树(OBST)

二叉查找树是按照二叉树结构来组织的,因此可以用二叉链表结构表示。二叉查找树中的关键字的存储方式满足的特征是:设x为二叉查找树中的一个结点。如果y是x的左子树中的一个结点,则key[y]≤key[x]。递归解法(盗图~)构造三个表,w表存储各节点出现频率,e表存储最优二叉搜索树的搜索成本期望值,root表存储最优子树的树根。根据三个表,可以利用递归来构建最优二叉搜

2016-04-10 14:33:09 5136

原创 动态规划-最长公共子序列(LCS)

最长公共子序列问题是求两个序列的一个最长的公共的子序列,不一定是连续的,但是顺序必须是正确的。S1:  b e a u t y w q l o v eS2: w e i q i n g b e a l o v e那么他们的最长公共子序列为bealove,长度为7(测试用例)c表用来记录最长子序列的长度,如图所示。/** * 最长公共子序列的动态规划算法

2016-04-09 17:01:55 439

原创 动态规划-流水线问题

流水线问题如图所示,两条流水线上相应位置上的梯级S1j和S2j所完成的任务相同,但完成时间不同分别为c1j和c2j。指令从内存发射到流水线上的时间分别为c10,c20。如果从一条流水线转移到另一个流水线,产生流动成本x。这个问题的最优解决方案里面包含了对子问题的最优解,这就是动态规划里面的最优子结构。所以我们选择动态规划来解决流水线问题。/**流水线问题,用动态规划解决 * @author

2016-04-09 15:26:43 4084

原创 基础排序算法(Java实现)

1.插入排序/** * 插入排序,复杂度O(n^2) * @author Qing * */public class Insert { //打印数组 public static void print(int[] a){ int n = a.length; System.out.println(" "); for(int i = 0; i < n; i ++){

2016-04-07 17:28:05 338

利用HttpClient和HtmlParser实现的简单爬虫(Java)

利用HttpClient和HtmlParser实现的简单爬虫(Java)

2016-04-20

wireshark-win64-1.12.1

一个好用的抓包工具wireshark, 用来获取网络数据封包,包括http,TCP,UDP,等网络协议包。

2014-12-12

空空如也

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

TA关注的人

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