几种常见的数据结构的JAVA实现
把树形的结构抽象了一下。
ITree
package utility.structure.def;
/**
*
* @author odie.tang
*
* @version 1.0 10/30/09
*/
public interface ITree<E>{
E getData();
E remove();
void setData(E e);
int getDepth();
int getLevel();
ITree<E> getRoot();
ITree<E> getParent();
ITree<E> getFirstChild();
ITree<E> addFirtChild(E e);
ITree<E> getLastChild();
ITree<E> addLastChild(E e);
ITree<E> getNode(E e);
boolean isLeaf();
boolean isRoot();
boolean remove(E e);
}
IOriginalTree
package utility.structure.def;
import java.util.Collection;
import java.util.List;
public interface IOriginalTree<E> extends ITree<E> {
ITree<E> addChild(E e);
ITree<E> addChild(int childIndex,E e);
void addChildren(Collection<? extends E> children);
void addChildren(int childIndex, Collection<? extends E> children);
ITree<E> getChild(int childIndex);
E removeChild(int childIndex);
List<IOriginalTree<E>> getChildren();
IOriginalTree<E> getNode(E e);
}
OriginalTree
package utility.structure;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Collection;
import java.util.ConcurrentModificationException;
import java.util.List;
import java.util.NoSuchElementException;
import utility.structure.def.IOriginalTree;
import utility.structure.def.ITree;
/**
* @author odie.tang
* @version 1.0 , 10/30/09
*/
public class OriginalTree<E> implements IOriginalTree<E>,Serializable {
private static final long serialVersionUID = 4339779121164601158L;
private E data;
private List<OriginalTree<E>> children = new ArrayList<OriginalTree<E>>();
private OriginalTree<E> parent = null;
private int level;
public OriginalTree(E root) {
this(root,null);
}
public OriginalTree(E roo
相关文档:
Java学习从入门到精通
一、 JDK (Java Development Kit)
JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具和Java基础的类库(rt.jar)。不论什么Java应用服务器实质都是内置了某个版本的JDK。因此掌握JDK是学好Java的第一步。最主流的J ......
Java关键字(keywords)
abstract default if private this
boolean do implements &nbs ......
我们经常要将数字进行格式化,比如取2位小数,这是最常见的。Java 提供 DecimalFormat 类,帮你用最快的速度将数字格式化为你需要的样子。下面是一个例子:
importjava.text.DecimalFormat;
publicclassTestNumberFormat{
publicstaticvoidmain(String[]args){ ......
/**
* 创建一个新的文件
* @param relativePath 相对路径
* @param fileName 文件名
* @return
* @throws IOException
*/
public File cre ......
猪年无聊,改了一个代码,有点D版那个意思,把WAP PUSH的C#代码改到了JAVA
原来出处:
http://www.codeproject.com/cs/internet/wappush.asp
改过后的代码在下面,程序好像可以输出了WAPPUSH的结构化的东西,但是,没有在CMPP协议上测试通过。
共7个文件:
package com.wap.wbxml;
public class Runner {
&nbs ......