链表节点的删除(链表数据升序有重复)

# include

# include

9 # define N

typedef结构节点{

,,int 数据;

,,结构节点*下;

} ElemSN;

,,,,,,,,,p→数据=https://www.yisu.com/zixun/a[我];

,,,,,,,,,下=h; p→

,,,,,,,,,h=p;

,,空白Printlink (ElemSN * h) {

,,,,,,,,,ElemSN * p;

,,,,,,,,,,(p=h; p, p=p→下)

,,,,,,,,,printf (“% 2 d \ n" p→数据),

,,}

, ElemSN * DelSameNode (ElemSN * h) {

,,,,,,ElemSN * p, q *;

,,,,,,,,, q=h;

,,,,,,p=h→下一个,,,,,//p指针从头结点的下一个节点开始

,,,,,,,,而(p) {

,,,,,,,,,,,,,如果(p→数据!=问→数据){,

,,,,,,,,,,,,,,,,,,,,,q=p;,,,,,,,,,,,,,,,,,,,,,,,,,,,,

,,,,,,,,,,,,,,,,,,,,,,,, p=p→下一个,,,,,,,,,,,,,,,,,,,,,,

,,,,,,,,,,,,,}

,,,,,,,,,,,,,其他{,,,,,,,,,,,,,,,,,,,,,,,,

,,,,,,,,,,,,,,,,,问→下=p→下一个,,

,,,,,,,,自由(p);

,,,,,,,,,,,,,,下;p=?/p>

,,,,,,,,,,,,,}

,}

,返回h;

,,}

,int主要(空白){

,,,,,int []={2, 2、3、3、4、4、5、5、6};

,,,,,ElemSN *头;

,,,,,头=创建(9);

,,,,,头=DelSameNode(头),

,,,,,Printlink(头),

,}


链表节点的删除(链表数据升序有重复)