1、/*源文件名:P1.cpp功能:顺序表操作*/#include #include #include #include #include #include #include #include const max=10000;struct SqListint elemmax; /存放元素的数组int length; /当前长度;void init(SqList void display(SqList void insert(SqList void search(SqList void del(SqList void simpleSort(SqList void QSort (SqList int
2、quickSort1(SqList void quickSort(SqList void binarySearch(SqList void nzlist(SqList typedef int DataType;SqList list;void main()char choice;while (1)system(“cls“);cout list.length;if(list.length = 0 if (i = 0 list.elemlist.length=x;list.length+;else coutx; coutx; cout=pivotkey) -high;+CPnum;list.ele
3、mlow=list.elemhigh; +QSnum;while(lowi;low=0,high=list.length-1;while(lowlist.elemmid)low=mid+1;m+;else high=mid-1;n+;if(i!=list.elemmid)cout“查找失败“endl;else cout“查找成功,位于第“mid+1“位“,比较“m+n+1“ 次“endl;getch();/编程实现一个顺序表的就地逆置,即利用原表的存储空间将顺序表逆置。void nzlist(SqList &list)/提高题/*1*、要求以较高的效率实现删除顺序表中元素值在 x 到 y(x 和 y 自定) 之间的所有元素。2*、编程实现将两个有序的顺序表进行合并,要求同样的数据元素只出现一次。3*、有序插入(显示比较次数、移动次数) ,屏幕提示后,从键盘输入一个元素值,在经过排序的线性表中插入这个元素;屏幕显示比较次数和移动次数,应有溢出判断和报告。4*、通过大量的自动操作,统计平均比较次数、平均移动次数。*/