1 从有序顺序表中删除其值在给定值s到t之间(s<t)的所有元素,若输入元素不合法或为空则返回错误信息并退出运行
boot delect(sqlist &L,elemtype s,elemtype t) { if(s>t||L.length==0) return 0; for(i=0;i<L.length&&L.data[i]>s;i++) //查找大于等于s的元素 if(i==L.length) return 0; for(j=i;j<L.length&&L.data[j]>=t;j++) //查找大于t的元素 for( ;j<L.length;j++,i++)//把大于t的元素移动到删除的元素上 L.data[i]=L.data[j]; L.length=i+1;//最后的表长,即最后元素的个数 return 1; }
文章来源: 顺序表考研习题2