已知长度为n的线性表A采用顺序存储结构,写一时间效率有效的算法,删除数据元素[x,y]之间的所有元素。

2025-02-28 13:26:56
推荐回答(3个)
回答1:

若每个节点的值在[x,y]之间就删除,顺序表无序:
bool delete_x_to_y(Seqlist &L,DataType x,DataType y){
if(L.n==0||x>=y)return false;//空表或x>y的返回false
int i,j;
for(i=L.n-1;i>=0;i--)
if(L.data[i]>=x&&L.data[i]<=y)//满足条件
{for(j=i+1;jL.n--;
}
return ture;//删除成功,返回ture

时间复杂度为O(n^2)

回答2:

比较而言,完成相同的任务,所需要的运算次数越少,效率就越高。
比如排序算法中,冒泡法效率低,合并排序效率高。

回答3:

数据结构一直 没有学好 郁闷呢 你要加油啊