m0_73954414 2022-09-29 20:04 采纳率: 57.1%
浏览 24
已结题

非空整数单链表删除值重复的结点,哪错了🥹🥹

用p遍历整数单链表L,preq和q遍历p结点之后的结点(初始时preq=p,q=p->next),若q->data==p->data,通过preq删除q结点,q=preq->next;否则preq、q同步后移。
#include "SLinkNode.cpp"
void Dsccf(SLinkNode *&L)
{
SLinkNode *p=L->next,*preq=p,*q;
while(p->next!=NULL)
{
q=p->next;
if(q->data==p->data)
{

      free(q);
     q=preq->next; 
  }
  else
    {
        p=p->next;
         q=q->next;
     }    
}

}
int main()
{
SLinkNode *L;
InitList(L);
ElemType a[]={2,3,3,4,5,6,0,0};
int n=sizeof(a)/sizeof(a[0]);
CreateListR(L,a,n);
printf("线性表:");DispList(L);
Dsccf(L);
printf("线性表:");DispList(L);
DestroyList(L);

}

  • 写回答

1条回答 默认 最新

  • 快乐鹦鹉 2022-09-29 20:09
    关注

    q=preq->next;
    这个preq你只是初始化了一下,后面循环过程都没有动啊

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月7日
  • 已采纳回答 9月29日
  • 创建了问题 9月29日

悬赏问题

  • ¥50 h5唤醒支付宝并跳转至向小荷包转账界面
  • ¥15 算法题:数的划分,用记忆化DFS做WA求调
  • ¥15 chatglm-6b应用到django项目中,模型加载失败
  • ¥15 武汉岩海低应变分析软件,导数据库里不显示波形图
  • ¥15 CreateBitmapFromWicBitmap内存释放问题。
  • ¥30 win c++ socket
  • ¥15 C# datagridview 栏位进度
  • ¥15 vue3页面el-table页面数据过多
  • ¥100 vue3中融入gRPC-web
  • ¥15 kali环境运行volatility分析android内存文件,缺profile