卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

c語言鏈表逆序輸出 如何將單向鏈表逆序?

如何將單向鏈表逆序?如果head節(jié)點是l,那么就有p=q=l/*p,q是指向head節(jié)點的兩個指針*/while(p->next!=null)P=P->next/*讓P指向鍵列表中要訪問的最后

如何將單向鏈表逆序?

如果head節(jié)點是l,那么就有p=q=l/*p,q是指向head節(jié)點的兩個指針*/while(p->next!=null)P=P->next/*讓P指向鍵列表中要訪問的最后一個節(jié)點*/while(1){while(Q->next!=P)q=q->next/*讓q向后看以找到要打印的最后一個節(jié)點*/printf(%dn“,P->data)P=q/*P向前移動一個*/q=L/*q也指頭節(jié)點*/if(P=L)/*access finished exit*/break}你可以參考它

typedef struct listnode{

listnode*next

element data

}listnode,*plist

這是三種不同的單列逆序算法,兩個遞歸和一個非遞歸

plist reverselist(plist head){

]if(!Head |(Head->next))

return Head

pList ph=ReverseList(Head->next)

Head->next->next=Head

Head->next=NULL

return ph

}

pList ReverseList(pList Head,pList&tail){

if(!頭| |?。╤ead->next){

tail=head

return head

}

pList pt

pList ph=ReverseList(head->next,pt)

pt->next=head

head->next=NULL

tail=head

return ph

}

pList reverselistunrec(pList head){

if(!頭| |?。╤ead->next))

返回head

pList h=NULL,h1=head

而(head){

h1=head->next

head->next=h

h=head

head=h1

}

返回h

}