简单无序链表
class Link
{
public int iData;
public double dData;
public Link next;
public Link(int i,double d)
{
this.iData=i;
this.dData=d;
}
public void display()
{
System.out.print("{"+this.iData+","+this.dData+"}");
}
}
class LinkList
{
public Link first;
public LinkList()
{
this.first=null;
}
public boolean isEmpty()
{
return this.first==null;
}
public void insertFirst(int i,double d)
{
Link newLink=new Link(i,d);
newLink.next=this.first;
this.first=newLink;
}
public Link deleteFirst()
{
Link firstLink=this.first;
this.first=firstLink.next;
return firstLink;
}
public void display()
{
if(this.isEmpty())
return;
Link current=this.first;
while(current!=null)
{
current.display();
current=current.next;
}
}
public Link find(int key)
{
Link current=this.first;
while(current!=null)
{
if(current.iData==key)
return current;
current=current.next;
}
return null;
}
public void delete(int key)
{
Link pre=this.first;
Link current=this.first;
while(current!=null)
{
if(current.iData==key)
{
if(current==this.first)
this.first=current.next;
else
pre.next=current.next;
}
else
{
pre=current;
}
current=current.next;
}
}
}