Java實現鍊錶,線性表

2021-08-17 07:41:11 字數 3461 閱讀 3384

package mylist;

public inte***ce list

#linklist

package mylist;

public class linklist implements list

system.out.println("插入0到19");

list.output();

system.out.println("size:"+list.size());

system.out.println("empty:"+list.empty());

for(int i=0;i<20;i++)

system.out.println("在索引5插入0到19");

list.output();

list ll=list.indexof(2);

system.out.println("2的索引");

ll.output();

system.out.println("刪除索引為1的資料30次");

for(int i=0;i<30;i++)

list.output();

system.out.println("根據at返回元素");

for(int i=0;i<5;i++)

system.out.println("linearlist轉linklist");

list linearlist=new linearlist();

for(int i=0;i<20;i++)

list list2=new linklist(linearlist);

list2.output();

system.out.println("交換3和4");

list2.swap(3, 4);

list2.output();

system.out.println("從10分成兩個");

list lists=list2.split(10);

lists[0].output();

lists[1].output();

} class node

public node(object object)

public node(object object,node next)

}private node head;

private static node next;

private int size;

public linklist()

public linklist(list list)

else

else

return p.data;

} }@override

public list indexof(object object)

else

p.next=new node(object,p.next);

size++;

} return this; }

private list insert(node node)

else

p.next=p.next.next;

size--;

} return this;

} @override

public void output()

else

system.out.print("\r\n");

} }@override

public void swap(int index1, int index2)

else if(index1>=size||index2>=size)

else

else

system.out.println("插入0到19");

list.output();

system.out.println("size:"+list.size());

system.out.println("empty:"+list.empty());

for(int i=0;i<20;i++)

system.out.println("在索引5插入0到19");

list.output();

list ll=list.indexof(2);

system.out.println("2的索引");

ll.output();

system.out.println("刪除索引為1的資料30次");

for(int i=0;i<30;i++)

list.output();

system.out.println("根據at返回元素");

for(int i=0;i<5;i++)

system.out.println("linklist轉linearlist");

list linklist=new linklist();

for(int i=0;i<20;i++)

list list2=new linearlist(linklist);

list2.output();

system.out.println("交換3和4");

list2.swap(3, 4);

list2.output();

system.out.println("從10分成兩個");

list lists=list2.split(10);

lists[0].output();

lists[1].output(); }

private final static double x=1.8;

private int size;

private int maxlength;

private object element;

public linearlist()

public linearlist(list list)

else }

@override

public list indexof(object object)

else if(size==maxlength)

element=temp;

size++;

} else

element[index]=object;

size++;

} return this; }

@override

public list deletebyindex(int index)

else if(index>=size)

else if(size==(int) (maxlength/x+1))

else

} @override

public list split(int index)

else if(index>=size)

else

for(int i=index;ireturn lists;

} }}

JAVA實現 線性表

如果乙個資料元素序列滿足 除第乙個和最後乙個資料元素外,每個資料元素都只有乙個前驅資料元素和乙個後繼資料元素 第乙個資料元素沒有前驅資料元素 最後乙個資料元素沒有後繼資料元素 則稱這樣的資料結構為線性結構。線性表 堆疊 佇列 串和陣列都屬於線性結構。線性表是一種可以在任意位置進行插入和刪除資料元素操...

線性表實現(JAVA)

package nodelist public class liststructs 判斷線性表是否為空 return 0為空,1為非空 public int listempty return 0 把陣列中的資料清空 return 0為清空 public int clearlist return 0 ...

線性表的鍊錶實現

include include define elemtype int typedef struct lnode list struct lnode struct lnode l list ptrl list makeempty list ptrl 建立空表 int length list ptrl...