求:顺序表删除的算法。删除顺序表中值相同的多余结点,使得最后得到的链表中的所有结点的数据域值都不同。
谢谢大家了
用算法实现:顺序表删除。删除顺序表中值相同的多余结点
答案:2 悬赏:60 手机版
解决时间 2021-03-08 06:16
- 提问者网友:饥饿走向夜
- 2021-03-08 01:44
最佳答案
- 五星知识达人网友:荒野風
- 2021-03-08 02:09
//从线性表中删除表头、表尾或等于给定值的元素
bool deletelist(linearlist& l, elemtype& item, int mark)
{
if(listempty(l)) return false;
if(mark>0) {
item=l.list[0];
for(int i=1; i<l.size; i++)
l.list[i-1]=l.list[i];
}
else if(mark<0) item=l.list[l.size-1];
else { for(int i=0; i<l.size; i++)
if(l.list[i]==item) break;
if(i>=l.size)
return false;
else item=l.list[i];
for(int j=i+1; j<l.size; j++)
l.list[j-1]=l.list[j];
}
l.size--;
return true;
}
bool deletelist(linearlist& l, elemtype& item, int mark)
{
if(listempty(l)) return false;
if(mark>0) {
item=l.list[0];
for(int i=1; i<l.size; i++)
l.list[i-1]=l.list[i];
}
else if(mark<0) item=l.list[l.size-1];
else { for(int i=0; i<l.size; i++)
if(l.list[i]==item) break;
if(i>=l.size)
return false;
else item=l.list[i];
for(int j=i+1; j<l.size; j++)
l.list[j-1]=l.list[j];
}
l.size--;
return true;
}
全部回答
- 1楼网友:舍身薄凉客
- 2021-03-08 02:58
//从线性表中删除表头、表尾或等于给定值的元素
bool DeleteList(LinearList& L, ElemType& item, int mark)
{
if(ListEmpty(L)) return false;
if(mark>0) {
item=L.list[0];
for(int i=1; i<L.size; i++)
L.list[i-1]=L.list[i];
}
else if(mark<0) item=L.list[L.size-1];
else { for(int i=0; i<L.size; i++)
if(L.list[i]==item) break;
if(i>=L.size)
return false;
else item=L.list[i];
for(int j=i+1; j<L.size; j++)
L.list[j-1]=L.list[j];
}
L.size--;
return true;
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯