C++实现之单链表中删除指定值

您所在的位置:网站首页 单链表删除指定元素 C++实现之单链表中删除指定值

C++实现之单链表中删除指定值

2024-07-16 09:09| 来源: 网络整理| 查看: 265

解题思路:

  (1) 新建单向链表;

  (2) 删除链表中的指定值:

      步骤一:   排除特殊情况:头结点值等于需要删除值data,则先直接删除头部节点;

      步骤二:

        使用快慢指针ptemp, qtemp;

          if ptemp->Getdata == e

            qtemp->Getnext = ptemp->Getnext;

            删除ptemp节点

            ptemp = qtemp->Getnext;

          else

            qtemp = ptemp->Getnext;

            ptemp = qtemp->Getnext;

bool LinkList::ElemDeleLinkList() //删除指定值 { int e = 0; cout e; cout Getdata() == e) { // 排除链表头指定值的情况 Node* ptemp; ptemp = m_Head; m_Head = m_Head->Getnext(); delete ptemp; } Node* ptemp, * qtemp;// p:较快地指针, q:较慢指针 ptemp = qtemp = m_Head; while (ptemp != NULL) { if (ptemp->Getdata() == e) {// 第一个p肯定不会是data qtemp->Setnext(ptemp->Getnext()); delete ptemp; ptemp = qtemp->Getnext(); } else { qtemp = ptemp; ptemp = ptemp->Getnext(); } } return true; }

实现效果如下: 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3