Java
文章平均质量分 90
酱油王
这个作者很懒,什么都没留下…
展开
-
B树的Java实现
以下代码为B树的Java实现,代码共四个文件。可以更改Constants.java文件中的常量来设置为n阶B树。package com.njupt.btree;import java.util.List;import com.njupt.constants.Constants;public class BTree { private BTNode root;...原创 2014-10-06 21:26:08 · 383 阅读 · 1 评论 -
Eva's Balance,进制转换
参考网址:http://blog.csdn.net/famousdt/article/details/7416264 http://blog.csdn.net/clxjoseph/article/details/7994089以下代码为宿舍龙哥所写:import java.util.Scanner;/** * 给你组数字,1,3,原创 2015-09-11 21:36:20 · 393 阅读 · 0 评论 -
字符串的排列。输入一字符串,打印出该字符串中字符的所有排列。例如输入abc,则排列为abc,acb,bac,bca,cab,cba
import java.util.HashMap;public class Permutation { private char[] ch; public Permutation(String str) { ch = str.toCharArray(); } public void listPermutation() { recursivePermute(ch, 0);原创 2015-08-28 20:59:50 · 2930 阅读 · 2 评论 -
哲学家就餐问题
/*每个哲学家相当于一个线程*//** * 哲学家就餐问题是1965年由Dijkstra提出的一种线程同步的问题 * * 问题描述: * * 一圆桌前坐着N位哲学家,两个人中间有一只筷子,桌子中央有面条。哲学家思考问题, * 当饿了的时候拿起左右两只筷子吃饭,必须拿到两只筷子才能吃饭。上述问题会产生死锁的情况, * 当5个哲学家都拿起自己右手边的筷子,准备拿左手边的筷子时产生死原创 2015-09-04 20:08:47 · 634 阅读 · 0 评论 -
生产者消费者问题
public class ProducerConsumer { public Product[] products = new Product[10]; volatile int top = 0; volatile int capacity = 0; public static final Integer HOLD = 0; class Producer implements R原创 2015-06-23 15:30:00 · 388 阅读 · 0 评论 -
矩阵中的路径。请设计一条函数,用来判断一个矩阵中是否存在一条包含某个字符串所有字符的路径。
/** * 矩阵中的路径。路径可以从矩阵中的任意一格开始,每一步可以在矩阵中向左、右、上、下移动一格。 * eg:下面3 X 4的矩阵中包含一条字符串"bcced"的路径,但矩阵中不包含"abcd"的路径。 * a b c e * s f c s * a d e e */public class MatrixPath { private char[] mat原创 2015-08-29 21:01:38 · 2085 阅读 · 0 评论 -
在数组中的两个数字如果前面一个数字大于后面的数字,则这两个数字构成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数
public class InversePairs { private int[] data; public InversePairs(int[] data) { this.data = data; } public int inverse() { if (data == null || data.length == 0) { return 0; } in原创 2015-08-29 20:23:25 · 2112 阅读 · 0 评论 -
共享队列ShareQueue
public class SharedQueue { class Node { Object task; Node next; Node(Object task) { this.task = task; next = null; } } private Node head = new Node(null); private Node last = he原创 2015-08-14 19:26:07 · 1210 阅读 · 0 评论 -
BitMap
/** * 在2.5亿个整数中找出不重复的整数,内存不足以容纳这2.5亿个整数。 * 每个数分配2bit,00表示不存在,01表示出现一次,10表示多次,11无意义 * * 参考网址:http://www.cnblogs.com/dongxi/archive/2012/11/07/2759618.html */public class BitMap { //用char数组存储2-B原创 2015-08-30 22:14:53 · 280 阅读 · 0 评论 -
快速排序、归并排序、堆排序
public class QuickSort> { public void sort(T[] t) { sort(t, 0, t.length - 1); } private void sort(T[] t, int lo, int high) { if (high <= lo) return; int index = partition(t, lo, high);原创 2015-08-28 20:49:56 · 301 阅读 · 0 评论 -
《Pattern-Oriented Software Architecture, Patterns for Concurrent and Networked Objects》Vol.2 笔记
转载地址:http://blog.csdn.net/jinzhuojun/article/details/45110497GoF的23种经典模式使得设计模式开始成为程序员的通用语言。《Pattern-Oriented Software Architecture, Patterns for Concurrent and Networked Objects》 Volume 2主要总结了转载 2015-07-13 17:40:56 · 358 阅读 · 0 评论 -
LRU缓存介绍与实现 (Java)
引子:我们平时总会有一个电话本记录所有朋友的电话,但是,如果有朋友经常联系,那些朋友的电话号码不用翻电话本我们也能记住,但是,如果长时间没有联系了,要再次联系那位朋友的时候,我们又不得不求助电话本,但是,通过电话本查找还是很费时间的。但是,我们大脑能够记住的东西是一定的,我们只能记住自己最熟悉的,而长时间不熟悉的自然就忘记了。其实,计算机也用到了同样的一个概念,我们用缓存来存放以前读取的数转载 2015-06-11 10:46:02 · 354 阅读 · 0 评论 -
R树的Java实现
以下为R树插入和删除Java代码实现,共7个类文件,附件为LB.txt数据集,如有错误请批评指正!原创 2014-10-21 16:39:25 · 6933 阅读 · 4 评论 -
B树的Java实现
以下代码为B树的Java实现,代码共四个文件。可以更改Constants.java文件中的常量来设置为n阶B树。原创 2014-10-25 16:12:08 · 1075 阅读 · 0 评论 -
N(3<=N<=9))只猴子采得一堆桃子,半夜里第一只猴子偷偷起来把桃平均分成N分,发现还多一个,它吃了那个桃子,还拿走其中的一份,第二只猴子起来又把桃子分成N分,还多一个,它吃了那个桃子,又拿走其中
N(3解法1:暴力import java.util.Scanner;/** * N(3<=N<=9))只猴子采得一堆桃子,半夜里第一只猴子偷偷起来把桃平均分成N分, * 发现还多一个,它吃了那个桃子,还拿走其中的一份,第二只猴子起来又把桃子 * 分成N分,还多一个,它吃了那个桃子,有拿走其中的一份,第三第四第五只第 * N只猴子都如此做了,请问这堆桃子至少有多少个? * *原创 2015-08-14 19:11:00 · 2089 阅读 · 0 评论 -
约瑟夫环问题Josephuse
/** * 约瑟夫环 */public class Josephuse { private Node first; private Node last; private int numbers; class Node { private int num; private Node pre; private Node next; public Node(int原创 2015-09-13 14:54:51 · 584 阅读 · 0 评论 -
并查集(Union-Find)算法介绍
转载地址:http://blog.csdn.net/dm_vincent/article/details/7655764本文主要介绍解决动态连通性一类问题的一种算法,使用到了一种叫做并查集的数据结构,称为Union-Find。更多的信息可以参考Algorithms 一书的Section 1.5,实际上本文也就是基于它的一篇读后感吧。原文中更多的是给出一些结论,我尝试给出转载 2015-09-29 18:13:41 · 367 阅读 · 0 评论 -
DB2 DATE 函数的使用一个陷阱
1)DATE 函数正确使用的话SELECT DATE('2010-05-19') FROM SYSIBM.SYSDUMMY1;或者使用 VALUES DATE('2010-05-19')结果:======2010-05-19这个是预期得到想要得到的结果2)如果在DATE 函数中忘掉单引号的话,结果就会出错SELECT DATE(2010-05-19) FROM SYSI转载 2016-05-27 13:50:44 · 1219 阅读 · 0 评论 -
Mybatis中#和$
MyBatis/Ibatis中#和$的区别1. #将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号。如:order by #user_id#,如果传入的值是111,那么解析成sql时的值为order by "111", 如果传入的值是id,则解析成的sql为order by "id". 2. $将传入的数据直接显示生成在sql中。如:order by $us转载 2016-05-27 13:43:36 · 466 阅读 · 0 评论 -
org.apache.log4j.Logger详解
转载地址:http://blog.csdn.net/anlina_1984/article/details/5313023org.apache.log4j.Logger详解1.概述1.1. 背景 在应用程序中添加日志记录总的来说基于三个目的:监视代码中变量的变化情况,周期性的记录到文件中供其他应用进行统计分析工作;跟踪代码运行时轨迹,作为日后审计的依据;担当集成开发环境中转载 2016-03-04 16:51:29 · 436 阅读 · 0 评论 -
Spring/SpringMVC在启动完成后执行方法
转载地址:http://zhaoshijie.iteye.com/blog/1974682http://www.icoolxue.com/blog/show/21关键字:spring容器加载完毕做一件事情(利用ContextRefreshedEvent事件)应用场景:很多时候我们想要在某个类加载完毕时干某件事情,但是使用了spring管理对象,我们这个类引用了其他类(可转载 2016-03-04 16:47:29 · 32235 阅读 · 6 评论 -
When Runtime.exec() won't Navigate yourself around pitfalls related to the Runtime.exec() method
转载地址:http://www.javaworld.com/article/2071275/core-java/when-runtime-exec---won-t.htmlAs part of the Java language, the java.lang package is implicitly imported into every Java program. This packa转载 2015-12-01 17:13:20 · 547 阅读 · 0 评论 -
用Java根据错误值解析出错误类型和错误码
public class ErrorParser { public static void main(String[] args) { int ret = encodeDepError(Constants.ELEM_POOL, ErrorCode.STATUS | ErrorCode.LACK | ErrorCode.PROBED_FAILED); String retStrin原创 2015-12-22 22:42:25 · 521 阅读 · 0 评论 -
RabbitMQ基础概念详细介绍
引言你是否遇到过两个(多个)系统间需要通过定时任务来同步某些数据?你是否在为异构系统的不同进程间相互调用、通讯的问题而苦恼、挣扎?如果是,那么恭喜你,消息服务让你可以很轻松地解决这些问题。消息服务擅长于解决多系统、异构系统间的数据交换(消息通知/通讯)问题,你也可以把它用于系统间服务的相互调用(RPC)。本文将要介绍的RabbitMQ就是当前最主流的消息中间件之一。RabbitMQ转载 2015-12-22 17:29:54 · 254 阅读 · 0 评论 -
K-means算法的java实现,聚类分析681个三国武将
转载地址:http://blog.csdn.net/lufeng20/article/details/7542955目录(?)[+]一,k-means算法介绍: k-means算法接受输入量 k ;然后将n个数据对象划分为 k个聚类以便使得所获得的聚类满足:同一聚类中的对象相似度较高;而不同聚类中的对象相似度较小。聚类相似度是利用各聚类中对象的均值所获得一个“中心对象”(转载 2015-11-26 20:02:02 · 801 阅读 · 0 评论 -
输入两棵二叉树A和B,判断B是不是A的子结构 || 二叉树的按层打印与之字形打印 || 将一棵二叉搜索树转化为排序的双向链表 || 判断一棵二叉树是不是对称二叉树
import java.util.LinkedList;import java.util.List;import java.util.Stack;public class BinaryTree { private Node root; public BinaryTree(int val) { root = new Node(val); } /** * 输入两棵二原创 2015-09-21 20:56:17 · 802 阅读 · 0 评论 -
位运算
public class Bit { public static void main(String[] args) { /* * 左移运算符(<<)的运算规则为:按二进制形式将数字左移相应位数,高位舍弃,低位补零。 * 带符号右移运算符(>>)的运算规则为:按二进制形式将数字右移相应位数,低位舍弃,高位正数补零,负数补1。 * 无符号右移运算符(>>>)的运算规则为:原创 2015-09-20 19:46:59 · 359 阅读 · 0 评论 -
顺时针打印矩阵
/** * 顺时针打印一个矩阵 */public class ClockwiseOutput { /** * 适合于所有矩阵 * @param num * @param startx * @param endx * @param starty * @param endy */ public void printMatrix(int[][] num, int s原创 2015-09-20 10:34:25 · 244 阅读 · 0 评论 -
Java:方法的虚分派(virtual dispatch)和方法表(method table)
转载地址:http://blog.csdn.net/biaobiaoqi/article/details/6894869Java方法调用的虚分派JUN 2ND, 2013 | COMMENTS本文通过介绍 Java 方法调用的虚分派,来加深对 Java 多态实现的理解。需要预先理解 Java 字节码和 JVM 的基本框架。虚分配(Virtual Disp转载 2015-11-05 22:40:48 · 311 阅读 · 0 评论 -
org.apache.commons.pool中PoolableObjectFactory和StackObjectPool分析
package org.apache.commons.pool; publicinterfacePoolableObjectFactory { TmakeObject() throwsException; void destroyObject(T obj)throws Exception; boolean validateObject(T obj);原创 2014-08-05 14:13:53 · 1121 阅读 · 0 评论