链表的有关操作

链表的有关操作

ID:38592061

大小:13.60 KB

页数:4页

时间:2019-06-15

链表的有关操作_第1页
链表的有关操作_第2页
链表的有关操作_第3页
链表的有关操作_第4页
资源描述:

《链表的有关操作》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、publicclassSingleLinkedList>{privatestaticclassNode{publicAnyTypedata;publicNodenextNode;publicNode(AnyTyped,Noden){data=d;nextNode=n;}publicNode(AnyTyped){data=d;nextNode=null;}publicNode(){data=null;nextNode=null;

2、}}privateinttheSize;//表的大小privateNodeheadNode;//单链表的头节点publicSingleLinkedList(){//构造空单链表headNode=null;theSize=0;}publicintsize(){//单链表的大小returntheSize;}publicAnyTypeget(intidx){returngetNode(idx).data;}publicAnyTypeset(intidx,AnyTypenewVal){Nodep=getNode(idx);AnyT

3、ypeoldVal=p.data;p.data=newVal;returnoldVal;}privateNodegetNode(intidx){Nodep;if(idx<0

4、

5、idx>size())thrownewIndexOutOfBoundsException("getNodeindex:"+idx+";size:"+size());p=headNode;for(inti=0;i

6、e(),x);returntrue;}publicvoidadd(intidx,AnyTypex){NodenewNode=newNode(x);if(this.headNode==null

7、

8、idx==0){//边界条件:空表插入或者在idx=0的节点之前插入Nodeq=newNode(x);newNode.nextNode=headNode;headNode=newNode;theSize++;}else{//单链表非空并且idx>0Nodep;p=getNode(

9、idx-1);newNode.nextNode=p.nextNode;p.nextNode=newNode;theSize++;}}publicbooleanremove(intidx){if(headNode==null)returnfalse;if(idx==0

10、

11、this.headNode.nextNode==null){//只有一个数据元素Nodep=this.headNode;headNode=null;theSize--;}else{Nodep=getNode(idx-1),q;q=p.nextNode;p.n

12、extNode=q.nextNode;theSize--;}returntrue;}publicintgetSize(SingleLinkedListLa){intcount=0;Nodep=La.headNode;if(La.headNode==null)return0;while(p!=null){++count;p=p.nextNode;}returncount;}publicintcontains(AnyTypex,SingleLinkedListLa){intidx=0;Nodep=La.hea

13、dNode;if(La.headNode==null)return-1;while(p.data!=x){idx++;p=p.nextNode;if(p==null)return-1;}returnidx;}publicvoidmergeSort(SingleLinkedListLa,SingleLinkedListLb,SingleLinkedListLc){Nodepa=La.headNode,pb=Lb.headNode,tmp;while(pa!=null&&pb!=null){//合并if(pa.data.compareTo(pb

14、.data)<0){tmp=pa;pa=pa.nex

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。