哈夫曼树

哈夫曼树
/**/ /*Node.java*/
public   class  Node 
    Node left ; 
    Node right ; 
    
int value ;
    
int code; 
    Node()
    
{
    }

    Node( 
int newData) 
    
this(newData,null,null); 
    }

    Node(
int newData ,Node left,Node right)
    
{
        
this.value=newData;
        
this.left=left;
        
this.right=right;
    }

    
public int  visit()
    
{
        
return  this.value;
    }
 
    
public void setCode(int code)
    
{
        
this.code=code; 
    }

  }
 
/**/ /*Queue.java*/
public   class  Queue
{
    
private java.util.LinkedList qlist=new java.util.LinkedList();
    
public Queue()
    
{
    }

    
public void clear()
    
{
        qlist.clear();
    }

    
public boolean isEmpty()
    
{
        
return qlist.isEmpty();
    }

    
public Object dequeue()
    
{
        
return qlist.removeFirst();
    }

    
public void enqueueSort(Object el)
  
{
      Node e
=(Node)el;
      
      
if(!qlist.isEmpty())
      
{  
           Node node;
           
int n=qlist.size();
       
for(int i=0;i<=n;i++)
       

            
            
if(i!=n)
            
{
            node
=(Node)qlist.get(i);
            
if(e.visit()<=node.visit())
              
{
                   qlist.add(i,el);
                 
break;
              }

            }

            
else 
            
{
                qlist.add(i,el);
            }

       }

    }

  }

  
public void enqueue(Object el)
  
{   
           qlist.addLast(el);
  }

  
public int getSize()
  
{
      
return qlist.size();
  }

  
public Object get(int i)
  
{
      
return qlist.get(i);
  }

  
  
public String toString()
  
{
      
return qlist.toString();
  }

}

你可能感兴趣的:(哈夫曼树)