Java数据结构之单链表

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Ambercherryy/article/details/80007015

Java版本的数据结构真的是弄得我非常头疼,但是辛苦做出来的东西还是想要分享一下

public class MySingly <G> {
    MyNode<G> head;
    MyNode<G> tail;
    int counter=0;
    MyNode<G> mynode=null;
public MySingly() {
// TODO Auto-generated constructor stub

}

public void add(G element)
{
if(counter==0)
{
mynode=new MyNode<G>(element);
head=mynode;

}
else 
{
mynode=new MyNode<G>(element);
MyNode<G> temp=head;
   while(temp.getNext()!=null)
   {
    temp=temp.getNext();
   }
   temp.setNext(mynode);
   
}
counter++;
}
public void add(int index, G element)
{
if(index<counter)
{
mynode= new MyNode<G>(element);
MyNode<G> temp= head;
for(int i=0;i<index;i++){
   temp=temp.getNext();
}
mynode.setNext(temp.getNext());
temp.setNext(mynode);
counter++;
}
else{
System.out.println("error");
}
}
     public boolean isEmpty()
     {
    boolean flag= false;
    if(counter==0)
    {
    flag=true;
    }
    return flag;
     }
     public G get(int index)
     {
    MyNode<G> temp=head;
    if(index<=counter)
    {
    for(int i=0; i<=index;i++)
    {
    temp=temp.getNext();
    }
    return temp.getElement();
    }
    else
    {
    System.out.println("error");
    return null;
    }
     }

}


public class Testa {


public static void main(String[] args) {
// TODO Auto-generated method stub
MySingly<String> list= new MySingly<String>();
String element="hhhHh";
               list.add(element);
               list.add("2");
               list.add(element);
               System.out.println( list.isEmpty()+"    "+ list.get(1));
     
}


}


猜你喜欢

转载自blog.csdn.net/Ambercherryy/article/details/80007015