www.pudn.com > fp_growth_source.rar > Queue.java
package association.fptree; /** * 树广度遍历的辅助队列,尾进头出; * */ class Queue{ 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; } } }