易截截图软件、单文件、免安装、纯绿色、仅160KB

几种常见的数据结构的JAVA实现

树是一个递归的数据结构,一棵树上的所有节点都可以被看成是一棵树,只不过除根节点外其他节点都比总树的规模小点而已。树的节点有三种:根节点(没有父亲节点),叶子节点(没有孩子节点),一般节点(既有父亲节点,也有孩子节点)。具体对结构的分析,几乎所有写数据结构的书中都有提到。
这棵树的实现花了好几天时间,碰到的最大问题是JAVA的泛型,在对泛型不是足够了解的事实下,似乎到处都碰到陷阱,幸亏在这中间得到了周树群同志的鼎力相助,所以在这里表扬他老人家一把:周树群是个好同志!
不管怎么说,一棵简单的树已经实现了,以后要用到树的地方就方便多了(目前为止我还没看到JDK里有专门的树的实现)。下面是这棵树的接口ITree,以及具体实现类OriginalTree。
ITree:
package utility.structure.def;
import java.util.Collection;
import java.util.List;
/**
*
* @author odie.tang
*
* @version 1.0 10/30/09
*/
public interface ITree<E>{

E getData();

void set(E e);

E remove();

int getDepth();

int getLevel();

ITree<E> getParent();

ITree<E> getFirstChild();

ITree<E> getLastChild();

ITree<E> addChild(int childIndex,E e);

void addChildren(Collection<? extends E> children);

void addChildren(int childIndex, Collection<? extends E> children);

ITree<E> addChild(E e);

ITree<E> getChild(int childIndex);

E removeChild(int childIndex);

List<ITree<E>> getChildren();

boolean isLeaf();

boolean isRoot();

ITree<E> getRoot();

boolean remove(E e);

ITree<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.ITree;
/**
* @author odie.tang
* @version 1.0 , 10/30/09
*/
public class OriginalTree<E> implements ITree<E>,Serializable {
private static final long serialVersionUID =


相关文档:

JAVA专业术语集

 JAVA专业术语集
API:Java ApplicationProgrammingInterface API(应用程序接口)是事先写好的代码,
        组织到相关包。例如 Applet 和 AWT 包包括建立字体、菜单、按钮的类(CLASS),
        全部的Java API被包含在JavaTM 2 Stan ......

Java多线程编程详解

一:理解多线程
多线程是这样一种机制,它允许在程序中并发执行多个指令流,每个指令流都称为一个线程,彼此间互相独立。
线程又称为轻量级进程,它和进程一样拥有独立的执行控制,由操作系统负责调度,区别在于线程没有独立的存储空间,而是和所属进程中的其它线程共享一个存储空间,这使得线程间的通信远较进程简单。 ......

java环境配置

cmd
set path=javac所在文件夹(不包括javac)
在任意文件夹下直接使用javac.exe,但当cmd 关闭时,就不再起作用
set classpath=...
作用:在任意文件夹下直接使用.class文件,但当cmd 关闭时,就不瑞起作用
查看:set pathh; set classpath
我的电脑->属性->高级->环境变量设置
用户变量:
变量名:classpat ......

JAVA处理日期时间常用方法


Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。瞬间可用毫秒值来表示,它是距历元(即格林威治标准时间 1970 年 1 月 1 日的 00:00:00.000,格里高利历)的偏移量。
例:
Calenda ......

Java实现队列操作


import java.util.LinkedList;  
//单向队列  
public class Queue {  
    public Queue() {  
    }  
    private LinkedList list = new LinkedList();  
    public void pu ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号