自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

xyjikl

for fun.

  • 博客(282)
  • 资源 (2)
  • 收藏
  • 关注

转载 构件技术与中间件

引言    网络计算带领软件产业进入了一个新的时代,商机无限,但同时挑战也无限。以电子商务为代表的技术潮流正将大到企业计算、小到个人数字代理的各种应用,在世界范围内联结起来,软件制造业正面临着一些新的课题,如复杂的分布环境、灵活的应用模式、广泛的包容性等,传统的软件设计思想已远远不够。   在这一背景下,构件技术应运而生,并逐渐炙手可热。不同于OO技术强调对个体的抽象,构件则更

2014-11-29 21:59:28 540

转载 HDU1007 查找平面最近点对

求点集中的最近点对有以下两种方法:设p1=(x1, y1), p2=(x2, y2), …, pn=(xn, yn)是平面上n个点构成的集合S,设计算法找出集合S中距离最近的点对。 OJ题目:HDU1007http://acm.hdu.edu.cn/showproblem.php?pid=10071、蛮力法(适用于点的数目比较小的情况下)1)算法描述:已知集合S中有n个点,一共可以

2014-11-29 17:45:32 662

原创 牛顿迭代法求函数值

//////////////////牛顿迭代法,又称作切线法,其具体原理为////求方程f(x)=0的近似根x_k,f(x)=f(x_k)+f'(x_k)(x-x_k)+o(x-x_k)////从而转化为求f(x_k)+f'(x_k)(x-x_k)=0的根////牛顿迭代公式为:x_(k+1)=x_k-f(x_k)/f'(x_k)////相应的迭代函数为:g(x)=x-f(x)/f'(x

2014-11-29 14:42:11 2317

原创 java 块状链表

节点类package BlockLinkList;import java.util.ArrayList;public class BlockLinkNode { public BlockLinkNode prev; public BlockLinkNode next;

2014-11-29 13:13:48 1091 2

转载 Eclipse下编写C++程序——CDT环境搭建

很多从事C++开发的人员都选择VS作为开发平台,其实用Eclipse开发C++也是可以的。下面就讲解如何使用Eclipse的CDT搭建标准的C/C++开发环境。1、简要介绍:    我们知道程序由源代码到最后生成可运行程序需要经过以下步骤:编辑->编译->连接。Eclipse就是编辑器,为了能编译C/C++源代码我们还需要一个编译器,这里我们选择minGW。    对于Eclipse就

2014-11-28 01:54:50 496

转载 离散事件模拟

#include#include#include#include#define ArriveTime 5 //两个相邻客户到达银行的时间间隔不超过5分钟#define EventTime 30 //每个客户办理业务的事件不超过30分钟#define ClostTime 100 //关门时间#define QueueNum 5 //队列数,即窗口数type

2014-11-28 00:51:37 747

转载 Apache Commons-logging使用实例

1.Commons-Loggin简介Jakarta Commons Logging (JCL)提供的是一个日志(Log)接口(interface),同时兼顾轻量级和不依赖于具体的日志实现工具。它提供给中间件/日志工具开发者一个简单的日志操作抽象,允许程序开发人员使用不同的具体日志实现工具。用户被假定已熟悉某种日志实现工具的更高级别的细节。JCL提供的接口,对其它一些日志工具,包括Log4J,

2014-11-27 23:27:20 398

转载 JUnit基础及第一个单元测试实例

单元测试  单元测试(unit testing) ,是指对软件中的最小可测试单元进行检查和验证。  单元测试不是为了证明您是对的,而是为了证明您没有错误。  单元测试主要是用来判断程序的执行结果与自己期望的结果是否一致。  关键是在于所用的测试用例(Test Case) 。 JUnit  JUnit是一个Java语言的单元测试框架。  项目主

2014-11-27 22:49:59 517

转载 后缀数组

int wa[maxn],wb[maxn],wv[maxn],ws[maxn];int cmp(int *r,int a,int b,int l){return r[a]==r[b]&&r[a+l]==r[b+l];} //就像论文所说,由于末尾填了0,所以如果r[a]==r[b](实际是y[a]==y[b]),说明待合并的两个长为j的字符串,前面那个一定不包含末尾0,因而后面这个的起始位置

2014-11-27 16:33:11 366

转载 程序调试的利器日志

如果世界上有一个人能够保证一次写出来的代码是百分之百正确的,那么毫无疑问,他一定是世界上最优秀的程序员,没有之一。为什么要求代码写好过后要进行充分的自测(包括单元测试和集成测试)?就因为是人皆会犯错,使程序就会有bug。作为一名软件开发人员,必须要学会对程序进行测试,也就是要学会程序的调试。        一般而言,对代码的调试有以下几种方法:        第一,凭肉眼看。在开发

2014-11-27 00:06:53 578

原创 java 十字链表

结点package crossList;public class OLNode { //非零元素的行和列下标 int row, col; int value; //右边节点指针 OLNode right; //下方节点指针 OLNode down; }package crossList;import cr

2014-11-26 22:06:10 1467 1

原创 java AC自动机

字典树结点package ac_auto;import java.util.*;public class TrieNode { public TrieNode[] childNodes; public int freq;

2014-11-26 22:02:26 2444

转载 AC自动机算法详解

首先简要介绍一下AC自动机:Aho-Corasick automation,该算法在1975年产生于贝尔实验室,是著名的多模匹配算法之一。一个常见的例子就是给出n个单词,再给出一段包含m个字符的文章,让你找出有多少个单词在文章里出现过。要搞懂AC自动机,先得有模式树(字典树)Trie和KMP模式匹配算法的基础知识。AC自动机算法分为3步:构造一棵Trie树,构造失败指针和模式匹配过程。    

2014-11-26 16:57:14 629

转载 数单词 (AC自动机模板题)

数单词时间限制:1000 ms  |  内存限制:65535 KB难度:4描述为了能够顺利通过英语四六级考试,现在大家每天早上都会早起读英语。LYH本来以为自己在6月份的考试中可以通过六级,可是没想到,成绩出来以后,居然没有通过。所以他不得不付出更多的时间来学习英语。要想通过六级,最基本的要求就是词汇量。为了能够更快的记住一些陌生单词,LYH有时会找一些

2014-11-26 03:13:31 635

原创 UML活动图实例

一、活动图的组成元素 Activity Diagram Element1、活动状态图(Activity)2、动作状态(Actions)3、动作状态约束(Action Constraints)4、动作流(Control Flow)5、开始节点(Initial Node)6、终止节点(Final Node)7、对象(Objects)8、数据存储对象(DataStore)

2014-11-24 22:54:59 8666

转载 UML时序图实例

一、时序图简介(Brief introduction)       二、时序图元素(Sequence Diagram Elements)角色(Actor)对象(Object)生命线(Lifeline)控制焦点(Focus of Control)消息(Message)自关联消息(Self-Message)Combined Fragments    三、时序

2014-11-24 22:40:13 3909

原创 UML建模之数据建模

一、数据库模简介二、数据建模元素1、表(Table)2、表索引(Table Index)3、表触发器(Table Trigger)4、表约束(Table Constraint)5、视图(View)6、存储过程(Stored Procedure)三、数据建模实例四、总结一、数据建模简介数据建模不仅可以对象的属性建模(比如E-R图),也可以对数据的行

2014-11-24 22:37:15 727

转载 OD使用教程 调试篇

认识OD的两种断点 OllyDBG从原理上来区分,有两种不同的断点:软件断点和硬件断点。也许会有朋友说那不是还有内存断点吗?内存断点严格来说是属于一种特殊的软件断点。 内存断点:内存断点每次只能设置一个,假如你设置了另一个内存断点,则上一个会被自动删除。设置一个内存断点,会改变整块(4KB)内存的属性,哪怕你只设置一个字节的内存断点。另外还需要提一下的是,内存断

2014-11-24 20:29:53 2957

转载 为什么要使用EJB?

首先,我们必须明确,为什么要使用J2EE?J2EE优点是什么?使用J2EE的主要原因是多层结构,传统的两层C/S结构难于维护,稳定性极差,界面代码和数据库代码混淆在一起,牵一动百,多层结构使得界面和数据库完全分离,并且诞生了中间件这样的技术,如下图:Web+EJB能组成真正的多层结构  为什么使用EJB我原先认为这不是一个讨论的话题,因为EJB是J2EE重要的组成部分,可以说没有EJB

2014-11-24 17:38:52 668

转载 EJB 3.0中会话Bean,实体Bean,消息驱动Bean的作用和例子

关键词:EJB 3.0,会话Bean,实体Bean,消息驱动BeanEJB 3.0规范使开发EJB比过去更容易,可能诱惑你考虑开发第一个EJB。如果真是这种情况,那么祝贺你,你已经成功避免了在你以前EJB开发者的很多挫折,并且享受到EJB 3.0开发的便利性。但是你开始开发以前,你可能想知道EJB是什么和它们用于什么目的。本篇文章解释了EJB的基础和你如何在一个J2EE程序中使用它们。

2014-11-24 17:32:38 706

原创 SQL 反模式

所谓专家就是在一个很小的领域把所有错误都犯过的人。逻辑数据库反模式1.存储多值属性。反模式:格式化的逗号分隔列表。增加插入,更新,删除复杂性,无法利用索引,通过逗号列表中的某一属性查询效率低,无法验证列表有效性,需要选择合适的分隔符,长度限制。合理使用:在不需要获取单独项,仅展示列表时可以提高效率。解决方案:创建交叉表:id1,id2。2.分层存储和查询。反模式:总依赖

2014-11-24 17:24:41 923

原创 反模式

反模式(英文:Anti-patterns或pitfalls), 是指用来解决问题的带有共同性的不良方法。它们已经经过研究并分类,以防止日后重蹈覆辙,并能在研发尚未投产的系统时辨认出来。软件开发中公认的反模式目录1项目管理2设计反模式3编程反模式4方法反模式5结构管理反模式6windows phone版应用▪ 软件简介 ▪

2014-11-24 17:22:54 467

原创 如何绘制程序流程图

记得在写文档的时候用到了程序流程图,一说到流程也没多想就认为它应该是描述先干什么再做什么的一幅图。接着上网搜了一下才发现程序流程图也是很讲究的,有自己的规矩,下面就来介绍一下画程序流程图之前之前应该了解的一些知识首先先来了解什么是流程图?流程图是以特定的图形符号加上说明表示算法的图。换句话说程序流程图表示了程序的操作顺序.它应包括:(1)指明实际处理操作的处理符

2014-11-24 11:37:35 1341

原创 活动图与流程图的区别

活动图是UML用于对系统的动态行为建模的另一种常用工具,它描述活动的顺序,展现从一个活动到另一个活动的控制流。活动图在本质上是一种流程图。活动图与流程图的区别(1)、流程图着重描述处理过程,它的主要控制结构是顺序、分支和循环,各个处理过程之间有严格的顺序和时间关系。而活动图描述的是对象活动的顺序关系所遵循的规则,它着重表现的是系统的行为,而非系统的处理过程。(2)、活动图能

2014-11-24 11:30:39 3709

原创 时序图、活动图、状态图、协作图的区别

时序图时序图用于描述对象之间的传递消息的时间顺序, 即用例中的行为顺序.当执行一个用例时, 时序图中的每条消息对应了一个类操作或者引起转换的触发事件.在 UML 中, 时序图表示为一个二维的关系图, 其中, 纵轴是时间轴, 时间延竖线向下延伸. 横轴代表在协作中各个独立的对象. 当对象存在时, 生命线用一条虚线表示, 消息用从一个对象的生命线到另一个对象的生命线的箭头表示. 箭头以时间

2014-11-24 09:34:51 921

原创 流程图和序列图

flow diagrams可以使用活动图显示不同用例之间的工作流。通过绘制活动图(显示用户在系统内外执行的主要任务)来开始建立需求模型,通常十分有用。例如:您可以绘制用例图和活动图以显示同一信息的不同视图。用例图对于显示在较大的活动中嵌套较小的操作更有效,但不显示工作流。例如:请注意,您也可以使用活动图来描述软件中的算法,但是如果将此类图用于业务进程,则应侧重于系统外部可见

2014-11-24 09:30:36 2076

转载 面向对象程序设计与面向过程程序设计解析

昨天晚上在知乎看到这个问题,一时还真说不太清。之前一直用JAVA和Android做开发,最近在维护一个老的项目,是用VB开发的,代码超过十个年头了,接触了一段时间。对面向过程和面向对象都有所涉及,在这里这个小结(有些是在网上收集的)自己的理解:面向过程是一种以事件为中心的编程思想,以功能(行为)为导向,按模块化的设计,就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,实现的

2014-11-24 09:05:50 848

原创 java 测量程序运行时间

主类 测量运行时间

2014-11-23 12:21:58 691

原创 如何用有道云笔记实现网页内容保存、网页剪报

真实原创,还请通过,怎样利用有道云笔记进行网页内容保存、网页剪报,首先网友要了解现在可以用电脑进行记录,而要与大家分享的这个笔记,就可以实现,一键保存精彩网页;多终端同步,一直珍藏,他主要用以下几个吸引人有功用,我们一个一个的了解和学习,首先我们先看下,如何应用;第一步;我们通过浏览器的扩展应用装入即可;他是可以自动提取网页正文,很方便的    我们可以搜索到哦;发现后

2014-11-23 08:07:50 3087

转载 二进制 java Class文件解析实例

其实网上已经有很多java Class文件的解析实例的文章,写这篇博客,只是为了自己仔仔细细的按照jvm spec看一边,别无其他。先上class文件的格式。ClassFile {        u4 magic;        u2 minor_version;        u2 major_version;        u2 constant_pool_

2014-11-22 17:40:58 852

转载 二进制

今天把之前在Evernote中的笔记重新整理了一下,发上来供对java class 文件结构的有兴趣的同学参考一下。学习Java的朋友应该都知道Java从刚开始的时候就打着平台无关性的旗号,说“一次编写,到处运行”,其实说到无关性,Java平台还有另外一个无关 性那就是语言无关性,要实现语言无关性,那么Java体系中的class的文件结构或者说是字节码就显得相当重要了,其实Java从刚开始

2014-11-22 17:40:04 598

转载 深入Java虚拟机:Class文件实例解析

前面发了几篇学习笔记,但是看这些东西总是感觉很"玄乎",来一篇实战的东西来揭一下"JVM"的面纱,让"SSH"时代的童鞋们来熟悉一下Java的"老祖爷"JVM。由于自己的水平有限,所以大家在看过程中发了什么问题,或者您有什么疑问请及时提出来,我及时解决。如果您有什么建议,那么更好大家一块讨论。1、源码文件public class LearningClassFile {      //普

2014-11-22 17:37:13 536

转载 解读Java Class文件格式

1.目的大型软件系统开发时,某些Java组件可能涉及到多种数据库或中间件系统的连接和应用,例如一个数据传递组件需要从DB2中读取数据,并将数据通过中间件WebSphere MQ发送到其他系统,这类组件功能单一,但却需要连接多种第三方产品,使得程序员的单元测试变的非常不便,程序员不得不注视或修改部分源代码,或者在本地安装所需第三方产品。无疑这两种选择都是痛苦的。基于以上的不便,本文开发了

2014-11-22 17:35:00 441

转载 Java过滤特殊字符的正则表达式

在网上找了好久也没找到个合适的正则表达式以过滤特殊字符;自己学习了下,写了两个,实现要求。 Java代码  // 过滤特殊字符      public   static   String StringFilter(String   str)   throws   PatternSyntaxException   {                     // 

2014-11-22 17:31:59 478

转载 永远不要相信用户的输入

“永远不要相信用户的输入”是对设计人员和编码人员说的,是进行安全设计和安全编码的重要准则。换句话说,任何输入数据在证明其无害之前,都是有害的。许多危险的漏洞就是因为过于相信用户的输入是善意的而导致的。    文章“我的网络安全观点之六:漏洞无处不在”中的例子中,程序直接引用输入数据作为页面模板文件名装载并显示处理,这是一个典型的信息泄漏的漏洞。还有一种常见的漏洞是直接引用输入数据构造查询数

2014-11-22 17:30:38 3018

转载 个简单C++程序反汇编解析 (Rev. 3)

如果想要了解C++内部的实现原理,没有什么比观察C++代码对应的汇编代码来的更直接了。本系列主要从汇编角度研究C++代码和汇编的对应关系,揭示C++内部的机制和原理。在第一篇文章中我将从一个简单的C++程序着手快速解释一下C++反汇编代码的基本的结构和内容,相当于一个简单的Preview。而在后续的文章中,我将根据不同的Topic,详细解释C++代码对应的反汇编代码。一个简单的C++程序示例如

2014-11-22 15:54:54 620

转载 深入理解C程序内存布局

1、堆和栈的区别,堆和栈的最大限制    堆主要用来分配动态内存,操作系统提供了malloc等内存分配机制来供程序员进行堆内存的分配,同时,堆内存的释放需要程序员来进行。malloc分配的是虚拟地址空间,和用到的实实在在的物理内存是两码事,只有真正往空间里写东西了,os内核会触发缺页异常,然后才真正得到物理内存。32位Linux系统总共有4G内存空间,Linux把最高的1G(0xC0000

2014-11-22 15:44:19 555

转载 C++程序的内存布局

对任何一个普通C++程序来讲,它都会涉及到5种不同的数据段。常用的几个数据段种包含有“程序代码段”、“程序数据段”、“程序堆栈段”等。不错,这几种数据段都在其中,但除了以上几种数据段之外,进程还另外包含两种数据段。下面我们来简单归纳一下进程对应的内存空间中所包含的5种不同的数据区。代码段:代码段是用来存放可执行文件的操作指令,也就是说是它是可执行程序在内存种的镜像。代码段需要防

2014-11-22 15:43:00 362

转载 图的邻接表存储

#define MAX_VERTEX_NUM 20 typedef enum{DG,DN,AG,AN}GraphKind; /* {有向图,有向网,无向图,无向网} */ typedef struct ArcNode { int adjvex; /* 该弧所指向的顶点的位置 */ struct ArcNode *nextarc; /* 指向下一条弧的指针 */ InfoTy

2014-11-21 22:05:20 565

转载 十字链表

十字链表的构成用链表模拟矩阵的行(或者列,这可以根据个人喜好来定),然后,再构造代表列的链表,将每一行中的元素节点插入到对应的列中去。十字链表的逻辑结构就像是一个围棋盘(没见过,你就想一下苍蝇拍,这个总见过吧),而非零元就好像是在棋盘上放的棋子,总共占的空间就是,确定那些线的表头节点和那些棋子代表的非零元节点。最后,我们用一个指针指向这个棋盘,这个指针就代表了这个稀疏矩阵。十字链表

2014-11-21 20:51:27 852

dajngo个人开发使用博客

修正评论位置 文章后面可添加。隐藏文章id表单, 显示评论条数。表单js 后台验证 验证码有待添加。

2016-02-10

django个人博客

django写的个人博客 几乎实现所有功能。集成kueditor编辑器。

2016-01-25

空空如也

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

TA关注的人

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