自定义博客皮肤

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

cglib原理解析

先放上示例代码: //Person.java public class Person { public void sayHello() { System.out.println("Hello!"); } } //Test....

2018-03-29 17:07:48

阅读数 962

评论数 0

Cglib的几种Callback简介

Callback是Cglib中一个比较核心的概念,看一下下面的示例代码:import net.sf.cglib.proxy.Enhancer; import net.sf.cglib.proxy.MethodInterceptor; import net.sf.cglib.proxy.Method...

2018-03-28 10:55:24

阅读数 1359

评论数 0

ApplicationContext和BeanFactory

首先要明白两点: BeanFactory和ApplicationContext都是容器,也就是放置所有Java Bean对象的地方,而且它们的关系是ApplicationContext继承自 BeanFactory。 BeanFactory的最重要的一个方法是getBean(),调用这个方法会...

2018-03-25 12:15:21

阅读数 128

评论数 0

最长公共子字符串的java语言求解及内存优化

动态规划的本质是以空间换时间:把一个问题划分成许多子问题,如果这些子问题会被计算很多次,那就把它们的计算结果存储起来以节省计算时间。比如斐波那契数列的公式F(n) = F(n-1) + F(n-2),其中F(n-1)和F(n-2)的结果会被计算很多次,所以可以使用一个数组存储对应的结果a[i] =...

2018-03-22 16:58:32

阅读数 292

评论数 0

二叉树输出全部路径问题的非递归式解决方案

问题:对于一棵二叉树,输出所有从根结点到叶子结点的路径。主要思路是和二叉树的非递归式后序遍历差不多,都是先用一个栈来存储已经访问过的结点,直至遍历完它自己、它的左子树、它的右子树。但是后序遍历和其它两种遍历方式还是有些不同,前序遍历的过程是:结点入栈-->访问结点-->访问左子树--&...

2018-03-22 14:26:06

阅读数 753

评论数 0

Spring5源码阅读--如何解决循环依赖?

首先要明确的是,循环依赖有以下几种: 构造函数的循环依赖。这种依赖显然是解决不了的。 非单例Bean的循环依赖。这种依赖也是解决不了的。 单例Bean的循环依赖。本文介绍的就是如何解决单例Bean的循环依赖的问题。 先来看一下测试代码,为了省略篇幅去掉setter和getter代码://Car.j...

2018-03-19 16:14:28

阅读数 681

评论数 0

使用VisualVM对IDEA调优(JDK1.8 )

众所周知IDEA的启动是很慢的,最近看了书上对Eclipse启动进行调优的案例,也想对IDEA调整一下,首先贴出来IDEA默认的参数: -Xms128m -Xmx750m -XX:ReservedCodeCacheSize=240m -XX:+UseConcMarkSweepGC -XX:Sof...

2018-03-14 22:21:11

阅读数 4108

评论数 1

数独问题的Java语言求解

数独问题有一个很重要的概念是“相关20格”,就是指一个单元格它的同行、同列以及同一个小九宫格的共计20个小单元格 。每个单元格的变化只会直接影响它的相关20格。 首先为每个单元格建立一个候选列表,并且初始化的时候用已经给出的提示数对每个单元格的候选列表进行排除。然后循环对每个单元格进行试数,每...

2018-03-11 18:47:31

阅读数 520

评论数 0

有向图的拓朴排序及AOE网关键路径算法的Java语言实现

import java.util.*; public class CriticalPath { static class Graph { int num; //顶点个数 Vertex[] vertices; //顶点数组 public...

2018-03-10 17:06:15

阅读数 407

评论数 0

爱因斯坦的思考题Java语言求解

题目是这样的,有五个不同颜色的房间排成一排,每个房间里分别住着一个不同国籍的人,每个人都喝一种特定品牌的饮料,抽一种特定品牌的烟,养一种宠物。没有任意两个人的任意属性值是相同的。问:是谁在养鱼? 下面是给出的15条线索。 英国人住在红色的房子里; 瑞典人养狗作为宠物; 丹麦人喝茶; 绿房子紧挨着白...

2018-03-09 16:32:49

阅读数 428

评论数 0

KM算法解决指派(匹配)问题的Java语言实现

KM算法是一个解决最大最小权匹配的经典算法。能解决的问题比如分配几个不同的工人完成不同的工作,求解怎样使得工厂的经济效益最高,建图就是每个工人完成每个工作对应的经济效益。还有一些建图比较复杂的问题,比如poj3686:有n个订单m个车间,每个车间均可以单独完成任何一个订单;每个车间完成不同订单的时...

2018-03-09 09:35:44

阅读数 1087

评论数 0

匈牙利算法的Java语言实现

匈牙利算法的一个重要概念是增广路径,具体思路是对于图的每个顶点都寻找其增广路径,然后将其加入匹配顶点当中,而对于每个顶点A寻找增广路径的过程中,如果另一个顶点B和顶点A有连接且在此轮循环中没有被访问过,则进行下一步处理:如果顶点B没有匹配的顶点或者虽然有匹配的顶点但是能找出另一个匹配的顶点C而把当...

2018-03-08 19:11:50

阅读数 827

评论数 0

三个水桶等分8升水的Java语言求解

题目:有三个容积分别是8升、5升和3升的水桶,其中容积为8升的水桶中有8升水,其它两个水桶是空的。三个水桶都没有刻度,问如何在不借助其它工具的情况下只使用这三个桶把8升水等分。 思路:把某一时刻三个水桶的水量称之为一个状态,则初始状态为{8, 0, 0},结束状态为{4, 4, 0}。可以使用穷...

2018-03-08 10:37:50

阅读数 1093

评论数 0

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