标题:单链表结点的删除(不带头结点)
取消只看楼主
看谁都是你
Rank: 1
等 级:新手上路
帖 子:32
专家分:0
注 册:2016-10-13
结帖率:57.14%
已结贴  问题点数:20 回复次数:0 
单链表结点的删除(不带头结点)
下面这个只能删除一个节点,如果想把链表中所有等于m的节点删除应该怎么改?
程序代码:
struct ListNode *deletem( struct ListNode *L, int m )
{
    struct ListNode *p;
    struct ListNode *pre;
    pre=L;
    p=pre->next;
    if(pre->data==m)
    {
        L=p;
        free(pre);
    }
    while(p!=NULL)
    {
        if(p->data==m)
        {
            pre->next=p->next;
            free(p);
            p->next=NULL;
        }
        pre=pre->next;
        p=p->next;
    }
    return L;
} 
2017-04-16 11:44



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-476156-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019135 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved