已知长度为n的线性表A采用顺序存储结构,写一时间效率有效的算法,删除数据元素[x,y]之间的所有元素。
来源:百度知道 编辑:UC知道 时间:2024/06/01 08:40:33
时间效率较高是什么意思呢?能否帮忙解释下,谢谢
算法具体是怎么写呢
算法具体是怎么写呢
若每个节点的值在[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;j<L.n;j++)L.data[j-1]=L.data[j]//删除后后面的元素都向前移一位
L.n--;
}
return ture;//删除成功,返回ture
}
时间复杂度为O(n^2)
比较而言,完成相同的任务,所需要的运算次数越少,效率就越高。
比如排序算法中,冒泡法效率低,合并排序效率高。
数据结构一直 没有学好 郁闷呢 你要加油啊
对长度为n的线性表进行顺序查找,在最坏情况下所需要的比较次数为____。
线性表采用顺序存储结构,找出该线性表中值最小的数据元素。
已知数列{a(n)}的前n项为S(n),求{a(n)}的通项a(n).
已知n阶矩阵A的特征值为λ0。
当利用大小为n的数组顺序存储一个队列时,该队列的最大长度为?
已知{a n}为等比数列,且b n=a n + a n+1
已知a=m*n*q,又m,n,q分别为不同的质数
已知线性表(a1,a2,a3, …,an)按顺序存于内存,每个元素都是整数,试设计用最少时间把所有值为负数?C
已知(3^(n+1)-2a^n)/(3^n+2a^n)的极限存在,则a的取值范围为?
已知数列的通项公式为A(n)=1/n,求Sn(前N项和)