//2-2 返回子表SinglyList<T> subList(begin, end)
public Seqlist_do<T> subList(int begin,int end)
{
if(begin<1) begin =1;//容错,如果开始的小于1,则设置为1
if(end>this.size()) end =this.size();//如果end大于这个单链表的长度,则把end设为最后一位
Seqlist_do<T> r= new Seqlist_do<T>();//新建一个用于返回的单链表
Node<T> temp,a =new Node<T>();//新建两个指针分别用于指向老单链表和新单链表的begin,
a= r.head;
temp =this.head;//a和b先指向两个的头结点
for(int i =0;i<begin-1;i++)
{
temp = temp.next;
}
//temp一直向后指,直到begin
for(int i=begin-1;i<end;i++)
{
temp = temp.next;
a.next= new Node<T>(temp.data,null);//深拷贝赋值
a = a.next;
}
return r;
}
单链表--返回子表
最新推荐文章于 2023-01-13 11:49:30 发布