⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 list.java

📁 图形界面
💻 JAVA
字号:
package 链表的有序插入soft20new;

public class List 
{
	private Node Head=null;
    //private Node Tail=null;
	private Node Pointer=null;
	private int Length=0;		
    public void deleteAll()
    {
    	Head=null;
    	//Tail=null;
    	Pointer=null;
    	Length=0;
    }
    public void reset()
    {
    	Pointer=null;
    }
    public boolean isEmpty()
    {
    	return(Length==0);
    }
    public int nextNode()
    {
    	return (Pointer.next.data);
    }
    public int currentNode()
    {
    	return (Pointer.next.data);
    }
    
    public void insert(int i)
    {
    	Node a=new Node(i);
    	if(Length==0)
    	{
    		Head=a;
    		//Tail=a;
    		Pointer=a;
    	}	
    	else{
    	a.next=Pointer.next;
    	Pointer.next=a;
    	Pointer=a;
    	
    	//Node temp=cursor();
    	//a.next=temp;
    	//if(Pointer==null)
    	//Head=a;
    	//else
    	//Pointer.next=a;
    		}   	
    	Length++;
    	
    }
    public void output(List list)
    {
    	Node temp=new Node(0);
    	temp=list.Head;
    	if(list.Head==null)
    	{
    		System.out.print("null");
    		
    	}
    	while(temp!=null)
    	{

        	System.out.print(" "+temp.data);
        	temp=temp.next;
        	
    	}
    }
    /* private Node cursor()
    {
    	if(Head==null)
    		throw new java.lang.NullPointerException();
    	else if(Pointer==null)
    		return Head;
    	else return Pointer.next;
    	
    }*/
     public static void main(String arg[])
     {
    	 List list=new List(); 
    	 ConsoleReader reader=new ConsoleReader(System.in);
    	 while(true)
    	 {
    		 System.out.println("input:");
    		 int i=reader.readInt();
    		 list.Pointer=list.Head;
    		 while(true)
    		 {
    			 if(list.Head==null){ list.insert(i);
    			 break;
    				 }
    			 if(list.Head!=null&&list.Head.data>i)
    			 {
    				 Node a=new Node(i);
    				 a.next=list.Head;
    				 list.Head=a;
    				 break;
    			 }
    			 //list.output(list);
    		 if(list.Pointer.next==null||list.Pointer.next.data>=i)
    		 {
    			 list.insert(i);
    			 break;
    		 }
    		 else list.Pointer=list.Pointer.next;
    		 }
    		 list.output(list);
    		 System.out.println("");
    	 }
     }
}
 class Node
{
	int data;
	Node next;
	//Node previous;
	Node (int d)
	{
		data =d;
		next=null;
		//previous=null;
	}
}

⌨️ 快捷键说明

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