欢迎来到天天文库
浏览记录
ID:40649417
大小:20.25 KB
页数:8页
时间:2019-08-05
《顺序表和单链表》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、顺序表publicinterfaceIlist{publicvoidclear();publicbooleanisEmpty();publicintlength();publicObjectget(inti)throwsException;publicvoidinsert(inti,Objectx)throwsException;publicvoidremove(inti)throwsException;publicintindexOf(Objectx);publicvoiddisplay();publicvoiddelete(inta)throwsException;publicvo
2、iddelsame()throwsException;}publicclassSqlistimplementsIlist{privateObject[]listElem;//线性表存储空间privateintcurLen;//线性表当前长度构造一个存储空间为maxSize的顺序表:publicSqlist(intmaxSize){curLen=0;//置顺序表当前长度为0listElem=newObject[maxSize];//为顺序表分配maxSize个存储单元}将顺序表置空:publicvoidclear(){curLen=0;}判断顺序表是否非空publicbooleanisE
3、mpty(){returncurLen==0;}求顺序表中的数据元素的个数:publicintlength(){returncurLen;}读取顺序表中的第i个数据元素:publicObjectget(inti)throwsException{if(i<0
4、
5、i>curLen-1)thrownewException("第"+i+"个元素不存在");returnlistElem[i];}顺序表的插入操作算法:publicvoidinsert(inti,Objectx)throwsException{if(curLen==listElem.length)//判断顺序表是否已满throwne
6、wException("顺序表已满");if(i<0
7、
8、i>curLen)//i不合法thrownewException("插入位置不合法");for(intj=curLen;j>i;j--)listElem[j]=listElem[j-1];//插入位置及其之后的所有数据元素后移一位listElem[i]=x;//插入xcurLen++;//表长加1}顺序表的删除操作算法:publicvoidremove(inti)throwsException{if(i<0
9、
10、i>curLen-1)//i不合法thrownewException("删除位置不合法");for(intj=i;j11、rLen-1;j++)listElem[j]=listElem[j+1];//被删除元素之后的所有数据元素左移一个存储位置curLen--;//表长减1}顺序表的查找操作算法:publicintindexOf(Objectx){intj=0;//j指示顺序表中待比较数据元素,初始值指向顺序表第0个数据元素while(j12、输出:publicvoiddisplay(){for(intj=0;j13、=i;j++){if(listElem[i].equals(listElem[j]))delete(j);}}}importjava.util.Scanner;publicclassSqlistTest{publicstaticvoidmain(String[]args)throwsException{SqlistL=newSqlist(20);L.insert(0,1);L.insert(1,3);L.insert(2,5);L.insert
11、rLen-1;j++)listElem[j]=listElem[j+1];//被删除元素之后的所有数据元素左移一个存储位置curLen--;//表长减1}顺序表的查找操作算法:publicintindexOf(Objectx){intj=0;//j指示顺序表中待比较数据元素,初始值指向顺序表第0个数据元素while(j12、输出:publicvoiddisplay(){for(intj=0;j13、=i;j++){if(listElem[i].equals(listElem[j]))delete(j);}}}importjava.util.Scanner;publicclassSqlistTest{publicstaticvoidmain(String[]args)throwsException{SqlistL=newSqlist(20);L.insert(0,1);L.insert(1,3);L.insert(2,5);L.insert
12、输出:publicvoiddisplay(){for(intj=0;j13、=i;j++){if(listElem[i].equals(listElem[j]))delete(j);}}}importjava.util.Scanner;publicclassSqlistTest{publicstaticvoidmain(String[]args)throwsException{SqlistL=newSqlist(20);L.insert(0,1);L.insert(1,3);L.insert(2,5);L.insert
13、=i;j++){if(listElem[i].equals(listElem[j]))delete(j);}}}importjava.util.Scanner;publicclassSqlistTest{publicstaticvoidmain(String[]args)throwsException{SqlistL=newSqlist(20);L.insert(0,1);L.insert(1,3);L.insert(2,5);L.insert
此文档下载收益归作者所有