// 删除给定节点的前驱节点 void DelPrior(LNode *s){ int a; // 保存前驱节点的值 LNode *p,*q; // p为前驱节点的前驱节点,q为前驱节点

// 初始化p和q为s节点
p=q=s;

// 找到s节点的前驱节点q
while(q->next!=s){
    q=q->next;
}

// 找到q节点的前驱节点p
while(p->next!=q)
    p=p->next;

// 保存q节点的值
a=q->data;

// 将p节点的next指向s节点,即删除q节点
p->next=s;

// 释放q节点的内存
free(q);

}

写注释void DelPriorLNode s int a; LNode pq;q为s的前驱p为q的前驱 p=q=s; whileq-next!=s q=q-next; whilep-next!=q p=p-next; a=q-data; p-next=s; freeq;

原文地址: http://www.cveoy.top/t/topic/jbpy 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录