自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

xqhadoop的博客

一切努力都是有回报的-码到成功

  • 博客(25)
  • 资源 (5)
  • 收藏
  • 关注

原创 图算法之求两点之间的所有路径(java)

1.给定图如下:2.求0到3之间可达的所有路径这里问题就是关于搜索遍历的问题,但其中需要注意到不能产生回路或环算法描述如下:3.java代码实现1)图结构点表public class Vertex {//存放点信息public int data;//与该点临接的第一个边节点public Edge firstEdge;}边表(代表与点相连的点的集合)

2017-03-26 17:29:17 14780 3

原创 模拟退火算法应用(Java)

引言:我们在前面将动态规划的挖金矿问题中, 使用了建模的方式来解题。我们解题时使用的是穷举解空间的方式来解,但是当问题规模很大时,穷举法无法在段时间内求出最优解,此时我们可以找出一个平衡的局部解。1.题目描述有一个国家,所有的国民都非常老实憨厚,某天他们在自己的国家发现了十座金矿,并且这十座金矿在地图上排成一条直线,国王知道这个消息后非常高兴,他希望能够把这些金子都挖出来造福国

2017-03-25 17:13:02 7482

原创 FastJson实现复杂对象序列化与反序列化

一.认识FastJsonfastjson是目前java语言中最快的json库,比自称最快的jackson速度要快,第三方独立测试结果说明比gson快大约6倍JSON帮助类 这个可以做一个实例研究代码,也可以作为一个工具类 去调用。 FastJson是一个Json处理工具包,包括“序列化”和“反序列化”两部分,Fastjson是一个Java语言编写的高性能功能完善的JSON库。F

2017-03-15 11:41:05 26644 1

原创 动态规划之挖金矿(背包问题)

1.题目描述有一个国家,所有的国民都非常老实憨厚,某天他们在自己的国家发现了十座金矿,并且这十座金矿在地图上排成一条直线,国王知道这个消息后非常高兴,他希望能够把这些金子都挖出来造福国民,首先他把这些金矿按照在地图上的位置从西至东进行编号,依次为0、1、2、3、4、5、6、7、8、9,然后他命令他的手下去对每一座金矿进行勘测,以便知道挖取每一座金矿需要多少人力以及每座金矿能够挖

2017-03-25 10:38:26 3607

原创 java基础(四)之java浅析异常处理机制

引言:异常机制可以使程序中异常处理代码和正常业务代码分离,保证程序代码更加优雅,并提高程序健壮性。我们在处理文件时,需要考虑文件不存在等各种极端异常情况,这样才能更好的保证程序的健壮性。下面我将从以下4个方面对异常进行讲解:1)异常的基本概念与分类2)异常的用法及若干注意事项3)如何自定义异常及处理原则4)异常的其他应用场合(多层循环退出,程序返回标识)一.异常的基

2017-03-24 11:34:46 652

原创 java之socket服务框架

我们知道socket通信是分服务端和客户端两种,如何设计一个好的通信框架呢。本文从实战角度构建一个适合中小型项目开发的socket服务框架。这里需要具有一定的java基础,比如线程知识,socket通信基础。1.服务端设计与实现这里我们将服务器端与客户端通信模型为per-connection per-thread,即一个连接一个线程。不过我们这里进行了部分优化,即建立线程池来管理这些服务线程。1)...

2017-03-20 13:47:40 9156 3

原创 java中addShutdownHook钩子程序用途

通过我们的程序中运行完之后都会进行一些清理工作,比如关闭数据库资源,同步等操作。这时我们的钩子函数addShutdownHook有了用武之地。1.钩子程序执行时机:当程序正常退出,系统调用 System.exit方法或虚拟机被关闭时才会执行添加的shutdownHook线程。其中shutdownHook是一个已初始化但并不有启动的线程,当jvm关闭的时候,会执行系统中已经设置的所有通过方法

2017-03-15 21:08:38 6430

原创 java如何调用外部程序

引言;有时候有些项目需求,直接使用java编写比较麻烦,所有我们可能使用其他语言编写的程序来实现。那么我们如何在java中调用外部程序,幸好java为我们提供了这样的功能。一.调用外部程序接口方法1.Process p=Runtime.getRuntime.exec("cmd")(最常用)方法2.Process p=new ProcessBuilder(cmd).start

2017-03-15 20:50:36 4697

原创 java原生序列接口

我们都知道java中实现序列化和反序列化,一般只需要实现接口Serializable即可。一.序列化,反序列化1.定义:序列化:将数据分解成字节流,以便存储在文件中或在网络上传输。反序列化;就是打开字节流并重构对象。对象序列化不仅要将基本数据类型转换成字节表示,有时还要恢复数据。恢复数据要求有恢复数据的对象实例。2java中序列化特点:如果某个类能够被序列化,其子类也可以被

2017-03-14 20:27:47 636

原创 jackson实现简单对象的序列化,反序列化

在项目开发中,设计到远程通信时,我们往往需要将当前对象序列化之后进行远程传输。其中jackson可以将java类型转化为json字符串进行传输,并可以在远程完成json字符串还原为相应对象的操作。一. jackson简介1.定义:JSON的全称是JavaScript Object Notation,是一种轻量级的数据交换格式。 JSON与 XML具有相同的特性,例如易于人编写和阅读,易

2017-03-13 22:53:22 8478

原创 详解java设计模式(六)之观察者模式(行为型)

一.观察者模式1.定义:观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,让它们能够自动更新自己。2.角色:1)抽象主题角色:把所有对观察者对象的引用保存在一个集合中,每个抽象主题角色都可以有任意数量的观察者。抽象主题提供一个接口,可以增加和删除观察者角色。一般用一个抽象类和接口来实现

2017-03-12 16:49:41 460

原创 详解java设计模式(五)之代理模式下篇(结构型)

引言:一般来说,对代理模式而言,一个主题类与一个代理类一一对应,这也是静态代理模式的特点。但是,也存在这样的情况,有n各主题类,但是代理类中的“前处理、后处理”都是一样的,仅调用主题不同。也就是说,多个主题类对应一个代理类,共享“前处理,后处理”功能,动态调用所需主题,大大减小了程序规模,这就是动态代理模式的特点。一.jdk下的动态代理基础知识1,Java.lang.reflect.P

2017-03-12 11:23:23 332

原创 详解java设计模式(五)之代理模式上篇(结构型)

一.认识代理模式1.定义:给某一个对象提供一个代理,并由代理对象控制对原对象的引用。这种角色类似与我们平时生活中见到的中介,首先中介没有房子,只要房主有房子,房主把房子委托给中介。中介替房主找租客,而不需要房主直接与租客联系。使用代理模式创建代理对象,让代理对象控制目标对象的访问(目标对象可以是远程的对象、创建开销大的对象或需要安全控制的对象),并且可以在不改变目标对象的情况下添加

2017-03-11 14:03:34 347

原创 python系列整理列表

我将python系列的博客分为基础系列,模块系列,问题系列。以下分别为对应系列下的文章,方便读者和我更好的进行学习。一.基础系列1. python基础系列(一)之基本数据类型2.python基础系列(二)程序控制结构3.python基础系列(三)之高级数据结构4.python基础系列(四)之特殊函数形式5.python基础系列(五)之

2017-03-11 11:38:17 445

原创 详解java设计模式整理列表

java设计模式一共分为3种类型,分别为创建型,行为型,结构型。我们从简单到复杂依次展开。关于java设计模式的博客我之后会陆续更新。设计原则与分类java设计模式之三大分类,六大原则一.创建型1. java设计模式(一)之单例模式(创建型)2.详解java设计模式(二)之工厂模式上篇(创建型)二.行为型1. 详解

2017-03-11 11:28:55 443

转载 java设计模式之三大分类,六大原则

一.设计模式定义(Design Patterns)设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。项目中合理的运用设计模式可以完美的解决

2017-03-11 11:18:19 5006

原创 详解java设计模式(四)之迭代器模式(行为型)

引言:熟悉数据库编程的同学都知道当我们需要获取数据库中的结果集合时,我们使用的是系统系统提供的迭代方法来进行数据的获取。这种设计模式就是迭代器模式。迭代器模式在我们平时使用的java集合中十分常见。如果我们访问arrayList,hashSet,hashMap等聚集对象,我们都可以通过聚集对象提供的迭代器接口来获取数据。这种设计模式本质上来说就是屏蔽了聚集对象访问的细节,提供统一的接口访问,符合开闭。

2017-03-11 11:04:18 518

原创 详解java设计模式(三)之策略模式(行为型)

引言:依稀记得我们本科时学过各种排序算法,比如冒泡排序,二分排序,归并排序等等。这些算法在功能上是一致的,只是其中的实现方式不同,时间复杂度和空间复杂度的差别而已。但是当我们作为系统开发者时,需要为用户提供相同问题不同的算法的实现。这时我们可以考虑使用策略模式来解决问题。一.策略(Strategy)模式理解策略模式定义了算法家族,分别封装起来,让它们之间可以相互替换,此模式让算法的变化不会影响到使用

2017-03-10 11:36:43 329

原创 详解java设计模式(二)之工厂模式上篇(创建型)

学习设计模式最重要的事是如何选择应用场合。我们平时就要多思考为什么要使用这种设计模式?这样才能在解决问题时,合适的选择设计模式。一.工厂模式初识1.为什么使用工厂模式 平时我们在创建对象时,一般都是直接使用关键词new一个实例对象,并将需要的构造参数传入,这就要求我们的客户必须了解对象的细节才能完成对象的创建工作。这样会导致紧耦合,不利于程序的扩展性和维护。

2017-03-09 09:56:41 401

原创 java基础(一)之StringBuffer,StringBuilder,String区别

引言:关于String,StringBuilder,StringBuffer的问题,在日常开发中似乎并没有引起我们的重视,但是仅仅这个点可能就影响到我们编写的程序的性能,同时这个点也是面试时经常被问到的java基础题。下面我们从理论和实践2个方面来分析和论证3者之间的关系。一.理论String,StringBuffer,StringBuilder比较string

2017-03-08 15:05:18 306

原创 详解java设计模式(一)之单例模式(创建型)

单例模式是在日常程序开发中经常使用的设计模式,一般用来受限资源的访问上,如数据库连接池,系统管理器,驱动程序等,通常都是单例模式。单例模式的实现方式有多种,但在日常开发中常用的主要有:饿汉式,懒汉式。      单例模式通常具有如下特点:      1)单例类只能有一个实例。  2)单例类必须自己创建自己的唯一实例。  3)单例类必须给所有其他对象提供这一实例。单例模式

2017-03-07 20:54:47 386

原创 基于字典的中文分词算法RMM,MM实现

引言:目前针对中文分词一般有基于字典,基于统计(HMM等),基于规则的分词方法,然而其中基于字典的中文分词是最基础,同时也是最高效的方式,但分词精度取决与字典的规模。**一.基于字典的中文算法简介**1.定义:按照一定策略将带分析的汉字串与一个大机器字典中的词条进行匹配,若在词典中找到某个字符串,则匹配成功.所以也称为机械匹配。按照扫描方向的不同:正向匹配和逆向匹配按照长度不同:最长匹配和

2017-03-07 11:29:02 6065

原创 基于字典的中文分词算法RMM

引言:目前针对中文分词一般有基于字典,基于统计(HMM等),基于规则的分词方法,然而其中基于字典的中文分词是最基础,同时也是最高效的方式,但分词精度取决与字典的规模。 一.基于字典的中文算法简介 1.定义:按照一定策略将带分析的汉字串与一个大机器字典中的词条进行匹配,若在词典中找到某个字符串,则匹配成功.所以也称为机械匹配。 按照扫描方向的不同:正向匹配和逆向匹配 按照长度不同:最长匹配和最

2017-03-06 22:54:00 1847

原创 python基础系列(六)之装饰器

引言: 这部分关于装饰器的内容需要前面闭包的知识作为基础。装饰器有点类似于我们java web里面经常讲到的面向切面编程(AOP),一切原理都是相通的。 一.什么是AOP 简单点来说,其实是为了更好的对程序进行控制,提高代码的可重用性。 在某段程序执行前面加上我们的控制代码。其实就是对原有函数进行了一层包装。(装饰器通俗点来说,就是对函数的二次封装)下面我将通过一个案例来说明。 在我们开发

2017-03-05 11:22:03 575

原创 python基础系列(五)之闭包

引言: 闭包在很多程序设计语言中都有出现,比如我们在网站开发时,经常使用的javascript中会接触过。在python中,闭包也是一个特别重要的概念。python中的装饰器本质上就是闭包。所以在我们介绍装饰器时,有必要理解闭包函数。一.理解函数 1.函数定义 ``` def 函数返回值 functionname([参数列表]): 函数体以上就是一个函数定义

2017-03-04 21:57:18 397

tooltip.rar

easyUI设计的信息提示ToolTips,其中包括了jquery,easyui等插件都包含在其中。

2017-12-14

Fatjar打包jar

Elipse 高版本打包jar插件FatjAR,MARS 4.5下亲测有用

2017-08-11

社区发现测试数据集

包含真实网络数据集和benchmark数据集。其中benchmark数据集中社区规模分别为1000,2000,5000.社区混合系数u区间为0.1-0.8

2017-07-10

玩转linux开发

linux必备,包含linux常用的shell,linux原理,linux案例等

2017-03-09

lucene并行索引

lucene并行索引

2017-03-09

空空如也

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

TA关注的人

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