java队列实现(顺序队列、链式队列、循环队列)



java队列实现(顺序队列、链式队列、循环队列)

双向顺序队列ArrayDeque和双向链式队列LinkedList,JDK已经包含,在此略。ArrayDeque包括顺序栈和顺序队列,LinkedList包含链式栈和链式队列。ArrayDeque和LinkedList都是线程不安全的。PriorityQueue优先队列也在JDK。

1.顺序队列的实现

[java] view plaincopy在CODE上查看代码片派生到我的代码片
package lang;

import java.io.Serializable;
import java.util.Arrays;[......]

Read more

apache.commons.collections4用法



apache.commons.collections4用法

apache.commons.collections4用例
工具类:
每个主要的集合接口都有一个utility类。因此,set和sortedset接口的utility类就是setutils。这些utility类提供了操作集合类型的共通方法。
基本的方法都包含在两个根集合接口的utility类中,即collectionutils和maputils。因为所有的其他集合接口都集成collection或者map,所以collectionutils和maputils可以被扩展使用。共同的方法包括交集操作、计数操作、迭代操作、逻辑操作[......]

Read more

最长连续回文串(Longest Palindromic Substring)

最长连续回文串(Longest Palindromic Substring)

给出一个字符串S,找到一个最长的连续回文串。

例如串 babcbabcbaccba 最长回文是:abcbabcba
算法首先将输入字符串S, 转换成一个特殊字符串T,转换的原则就是将S的开头结尾以及每两个相邻的字符之间加入一个特殊的字符,例如#

例如: S = “abaaba”, T = “#a#b#a#a#b#a#”.

为了找到最长的回文字串,例如我们当前考虑以Ti为回文串中间的元素,如果要找到最长回文字串,我们要从当前的Ti扩展使得 Ti-d … Ti+d 组成最长回文字串. 这里 d[......]

Read more

Java时间日期格式转换

Java时间日期格式转换

字串日期格式转换
用的API是SimpleDateFormat,它是属於java.text.SimpleDateFormat.
1.字串转日期:
2002-10-8 15:30:22要把它转成日期,可以用
Date date=sdf.parse(“2002-10-8 15:30:22″);
2.日期转字串
假如把今天的日期转成字串可用
String datestr=sdf.format(new Date());
[java] view plaincopy在CODE上查看代码片派生到我的代码片
package use.java;

impor[......]

Read more

java解析json

java解析json

java解析json

DTO:Data Transfer Object,数据传送对象。
json-lib-2.4-jdk15.jar依赖commons-beanutils-1.8.3.jar |commons-collections-3.2.1.jar |commons-lang-2.6.jar |commons-logging-1.1.1.jar |ezmorph-1.0.6.jar

[java] view plaincopy在CODE上查看代码片派生到我的代码片
package util;

import java.util.ArrayLis[......]

Read more

java中HashSet、LinkedHashSet、TreeSet、ArrayList、ArrayDeque、LinkedList使用区别

java中HashSet、LinkedHashSet、TreeSet、ArrayList、ArrayDeque、LinkedList使用区别

HashSet:哈希表是通过使用称为散列法的机制来存储信息的,元素并没有以某种特定顺序来存放;

LinkedHashSet:以元素插入的顺序来维护集合的链接表,允许以插入的顺序在集合中迭代;

TreeSet:提供一个使用树结构存储Set接口的实现,对象以升序顺序存储,访问和遍历的时间很快。

ArrayList 顺序表存储,访问快,插入和删除慢。
ArrayDeque 双向顺序存储,集成栈和队列方法,访问快,插入和删除慢。
Li[......]

Read more

Maven 手动添加 JAR 包到本地仓库

Maven 手动添加 JAR 包到本地仓库

Maven 确确实实是个好东西,用来管理项目显得很方便,但是如果是通过 Maven 来远程下载 JAR 包的话,我宿舍的带宽是4兆的,
4个人共用,有时候用 Maven 来远程下载 JAR 包会显得很慢,一般我发现下载速度不明显的时候,我就 Ctrl + C 来终止它的下载。
然后改用手动来下载,因为用迅雷一类的工具来下载会快很多。我机子上 Maven 的本地仓库的很多 JAR 包我都是手动下载的。
手动下载的话就会带来一个问题,就是,怎么样手动将下载下来的 JAR 包添加到 Maven 的本地仓库。关于这个,网上也有很多资料。
我说下我的[......]

Read more

Mongodb基础用法及查询操作

Mongodb基础用法及查询操作

插入多条测试数据
> for(i=1;i<=1000;i++){
… db.blog.insert({“title”:i,”content”:”mongodb测试文章。”,”name”:”刘”+i});
… }

db.blog.list.find().limit(10).forEach(function(data){print(“title:”+data.title);}) 循环forEach 用法

 

db.blog.findOne(); 取一条数据

db.blog.find();取多条数据[......]

Read more

java格式化数字DecimalFormat

java格式化数字DecimalFormat

在输出数字时,有时需要给数字配上单位,有时需要数字具有一定的精度,也有时需要用科学计数法表示数字。
关键技术剖析:
v java.text.DecimalFormat类专门用于格式化数字。
v 需要为DecimalFormat提供格式化模式Pattern。通过构造方法或者DecimalFormat的applyPattern方法设置模式。Pattern的类型为字符串。
v 调用DecimalFormat的format实例方法,参数为待格式化的数字,该方法使用DecimalFormat对象的pattern对参数进行格式化。
[java][......]

Read more

列表、集合与数组之间的转化

列表、集合与数组之间的转化

数组和List、Set都可以存放多个元素,数组的特点是长度固定,访问速度非常快,元素类型单一;List的特点是长度可以动态增加,能够维护元素的次序,存入的所有元素都当做Object,允许元素重复;Set的特点是长度可以动态增加,能够保证元素不重复,存入的所有元素都当做Object。本节实例介绍Set、List和数组之间如何转换,将Set、List对象中的元素转换为数组,将数组转换为Set、List对象,转换过程中元素保持不变。
关键技术剖析:
实现List、Set和数组之间转换的关键技术点如下:
² List转换成数组可以使用List的toArray方法[......]

Read more