題目:
單鏈表的逆置/反轉。
解題思路:
思路一:
定義三個指標,n1,n2,n3,初始值分別為 :鍊錶第乙個節點,鍊錶第二個節點,第三個節點。n2儲存的是n1的位址,n3儲存的是n2的位址,通過n3來往後遍歷,直n2為空,這時n1指向最後乙個元素,這時返回n1,就可以逆置鍊錶
如下圖:
**實現:
slistnode *reservenode(slistnode *pfirst)
pfirst->pnext=null;
pfirst = n1;
return pfirst;
}
思路二:
通過頭插法:定義兩個指標乙個pnewnode指向空,pnode指向煉表頭,pnode遍歷鍊錶,在遍歷的時候再定義乙個指標來儲存pnode遍歷的值,然後頭插到節點pnewnode上,而不是創乙個新鍊錶。
slistnode *reservenode1(slistnode *pfirst)
return pnewnode;
}
逆置 反轉單鏈表(C )詳細
遺留的問題 我想新建立乙個鍊錶來實現單鏈表的反轉,目前還沒有實現出來 思想及演算法 include using namespace std struct list list insert list head,int x list t newlist x p next t return head vo...
單鏈表逆置
單鏈表逆置 include include define item num 10 typedef struct tagnode node node linklist create void linklist destroy node head void linklist print node hea...
單鏈表逆置
name 單鏈表逆置 author 巧若拙 date 22 11 14 16 13 description 分別用遞迴和非遞迴兩種方式實現單鏈表 不含頭結點 的逆置 include include include typedef char elemtype typedef int status 函式...