📄 linkedlist.java
字号:
public class LinkedList{
public ListNode header;
public LinkedList(){
header=new ListNode(null);
}
public boolean isEmpty()
{return header.next==null;}
public void makeEmpty()
{header.next=null;}
public LinkedListItr zeroth()
{return new LinkedListItr(header);}
public LinkedListItr first()
{ return new LinkedListItr(header.next);}
public static void printList( LinkedList theList ){
if (theList.isEmpty())
System.out.print("Empty list") ;
else
{ LinkedListItr itr = theList.first( );
for( ; ! itr.isPastEnd( ); itr. advance( ) )
System.out.print( itr.retrieve( ) + " ") ;
}
System.out.println( );
}
public LinkedListItr find (Object x){
ListNode itr=header.next;
while(itr!=null&&!itr.element.equals(x))
itr=itr.next;
return new LinkedListItr(itr);
}
public void remove(Object x){
LinkedListItr p=findPrevious(x);
if(p.current.next!=null)
p.current.next=p.current.next.next;
}
public LinkedListItr findPrevious(Object x){
ListNode itr =header;
while(itr.next!=null&&!itr.next.element.equals(x))
itr=itr.next;
return new LinkedListItr(itr);
}
public void insert(Object x,LinkedListItr p){
if(p!=null&&p.current!=null)
p.current.next=new ListNode(x,p.current.next);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -