劍指Offer之反轉鍊錶

2021-09-01 21:05:59 字數 1687 閱讀 1203

題目描述:輸入乙個鍊錶,反轉鍊錶後,輸出鍊錶的所有元素。

(hint : 請務必使用鍊錶)

輸入:輸入可能包含多個測試樣例,輸入以eof結束。

對於每個測試案例,輸入的第一行為乙個整數n(0<=n<=1000):代表將要輸入的鍊錶的個數。

輸入的第二行包含n個整數t(0<=t<=1000000):代表鍊錶元素。

輸出:對應每個測試案例,

以此輸出鍊錶反轉後的元素,如沒有元素則輸出null。

樣例輸入:

5

1 2 3 4 5

0

樣例輸出:

5 4 3 2 1

null

【解析】

* 日期:2013-11-21

* 題號: 題目1518:反轉鍊錶

* 結果:ac

* 總結:

**********************************/

#include#include #include #include using namespace std;

typedef struct listnodelistnode;

listnode* reverselist(listnode*head)

else

p->next = pre;

pre = p;

p = pnext;

}return head;

}}int main()

//無資料

if(n <= 0)

//輸出反轉後資料

else

else

p = p->next;}}

} return 0;

}

/*********************************

* 日期:2013-11-21

* 題號: 題目1518:反轉鍊錶

* 結果:ac

* 總結:

**********************************/

#include#include #include #include using namespace std;

typedef struct listnodelistnode;

listnode* reverselist(listnode*head)

else

return head;

}}int main()

//無資料

if(n <= 0)

//輸出反轉後資料

else

else

p = p->next;}}

} return 0;

}

劍指offer之反轉鍊錶

題目介紹 輸入乙個鍊錶,反轉鍊錶後,輸出鍊錶的所有元素。題目比較簡短,所以直接上 public class listnode public class solution listnode curnode head.next head.next null listnode resultnode hea...

劍指offer 之反轉鍊錶

反轉鍊錶 思路 1.設定新的頭結點,並賦值為none 2.迴圈往復判斷是否還有結點,用指標保留下乙個節點的位置,3.將結點的指標指向它的前乙個節點,最後輸出新頭結點的位置 class solution 返回listnode defreverselist self,phead write code h...

劍指offer 反轉鍊錶

輸入乙個鍊錶,反轉鍊錶後,輸出鍊錶的所有元素。方法1 將單鏈表儲存為陣列,然後按照陣列的索引逆序進行反轉。方法2 使用三個指標遍歷單鏈表,逐個鏈結點進行反轉。方法3 從第2個節點到第n個節點,依次逐節點插入到第1個節點 head節點 之後,最後將第乙個節點挪到新錶的表尾。public class l...