當前位置:
首頁 >
【剑指Offer】从尾到头打印链表
發布時間:2025/5/22
21
豆豆
生活随笔
收集整理的這篇文章主要介紹了
【剑指Offer】从尾到头打印链表
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
劍指Offer 從尾到頭打印鏈表
- 題目描述
- 解法1
- 實現代碼
- 一點補充
- 解法1
題目描述
輸入一個鏈表,按鏈表值從尾到頭的順序返回一個ArrayList。
解法1
這道題主要思路是while循環從頭遍歷整個列表,將每個元素插入到List中,因為要求是從尾到頭,所以每次插入時利用Insert函數不斷將元素插入到第一的位置
實現代碼
public class ListNode {public int val;public ListNode next;public ListNode(int x){val = x;} } public List<int> printListFromTailToHead(ListNode listNode) {List<int> list = new List<int>();while (listNode != null){list.Insert(0, listNode.val);listNode = listNode.next;}return list; }一點補充
針對C#語言,調用Insert方法的性能消耗會比Add方法多,但如果使用Add方法,最后需要再調用一次Reverse方法進行翻轉。經過多次測試,這兩種方式的性能消耗沒有明顯差距,和測試數據集相關。下面貼上第二種方法實現的代碼。
public List<int> printListFromTailToHeadOptimize(ListNode listNode) {List<int> list = new List<int>();while (listNode != null){list.Add(listNode.val);listNode = listNode.next;}list.Reverse();return list; }轉載于:https://www.cnblogs.com/iwiniwin/p/10793655.html
總結
以上是生活随笔為你收集整理的【剑指Offer】从尾到头打印链表的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [19/04/04-星期四] IO技术_
- 下一篇: python-常见数据类型及其方法