本題要求實現乙個函式,將給定的單鏈表逆轉。
函式介面定義:
list
reverse( list l );
其中list結構定義如下:
typedef
struct node *ptrtonode;
struct node ;
typedef ptrtonode list; /* 定義單鏈表型別 */
l是給定單鏈表,函式reverse要返回被逆轉後的鍊錶。
裁判測試程式樣例:
#include
#include
typedef
int elementtype;
typedef
struct node *ptrtonode;
struct node ;
typedef ptrtonode list;
list read(); /* 細節在此不表 */
void print( list l ); /* 細節在此不表 */
list reverse( list l );
int main()
/* 你的**將被嵌在這裡 */
輸入樣例:
5
1 3 4 5 2
輸出樣例:
1
2 5 4 3 1
思路:
把指標反過來就行,尾指標變頭指標。
**:
list reverse( list l )
return l2;
}
c語言手動實現反轉鍊錶 Reverse
本題要求實現乙個函式,將給定的單鏈表逆轉。函式介面定義 list reverse list l 其中list結構定義如下 typedef struct node ptrtonode struct node typedef ptrtonode list 定義單鏈表型別 l是給定單鏈表,函式revers...
反轉鍊錶 C語言實現
題目要求 在o n 的時間內反轉鍊錶,並返回反轉後鍊錶的頭指標。分析 求解鍊錶問題首先一定要考慮非空問題,而且要注意終止的位置。如圖所示,反轉的時候定義三個節點,pcur代表當前節點 pnext代表指向的下乙個節點 ppre代表前乙個節點。有了這三個節點就可以從前往後遍歷,而且保證鍊錶不會斷裂!in...
反轉鍊錶(c 實現)
template class t class listnode template class t class list 反轉鍊錶 1 1 首先若煉表為空或只有乙個元素,不需要反轉,否則到2 2 定義三個指標p,q,r,p head它們的關係為p q r 3 令q p,若r為尾節點,則令r q,hea...