递增单链表,删除值域重复的结点。
递增单链表,删除值域重复的结点。
While (p->next!=null)
{
If(p->data==p->next->data)
{
Q=p->next;
p->next=q->next;
delete(q);
}
Else p=p->next;
}
那个大哥能帮我分析一下上面的程序, 小弟不是计算机专业的,没有学习过数据结果, 所以根本看不懂.
因为过两天要靠试, 还请各位帮帮忙...
[解决办法]
While (p->next!=null)//循环到等于null停止
{if(p->data==p->next->data)//判断当前节点和下一个节点的值域是否相等
{//相等则删除
q=p->next;//记录要删除的节点
[解决办法]
p->next=q->next;//令p的指向下一个节点,以便做进一步判断
delete(q);//删除节点
}
else p=p->next;//若不想等,则查询下一个节点
}
自己多画画图,这样能加深印象