queue.java

来自「频繁项挖掘算法FP—Growth算法的实现」· Java 代码 · 共 67 行

JAVA
67
字号
package association.fptree;

/**
 * 树广度遍历的辅助队列,尾进头出;
 * */
class Queue<T>{
	Elem head,tail,elem;
	//void in(FPTree.Node node){
	void in(T node){
		elem=new Elem(node);
		if ((head==null)&&(tail==null)){
		    tail=elem;
		    head=elem;
		}    
		else{
			tail.next=elem;
			tail=elem;
		}	
	}
	//FPTree.Node out(){
	T out(){
		Elem e;
		if ((head==null)&&(tail==null)){
			return null;
		}
		else if(head==tail){
			e=head;
			head=tail=null;
		    return e.node;
		}
		else{
			e=head;
			head=head.next;
		    return e.node;
		}
	}
	boolean IsEmpty(){
		if ((head==null)&&(tail==null)){
			return true;
		}
		return false;
	}
	/**
	 * 清空队列
	 * */
	void Empty(){
		head=null;
		tail=null;
	}
	Queue(){
		head=null;
		tail=null;
		
		
	}
	class Elem{
		//FPTree.Node node;
		T node;
		Elem next;
		//Elem(FPTree.Node node){
		Elem(T node){
			this.node=node;
			next=null;
		}
	}	
}   

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?