LeetCode || Reverse Linked List
来源:互联网 发布:macbook视频剪辑软件 编辑:程序博客网 时间:2024/05/19 19:16
写法一:非递归实现。
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* reverseList(ListNode* head) { if(head == NULL) return NULL; ListNode * t = head; head = head->next; t->next = NULL; ListNode* tNext = t; while(head != NULL) { t = head; head = head->next; t->next = tNext; tNext = t; } return t; }};
写法2:递归实现。
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* reverseList(ListNode* head) { if(head == NULL || head->next == NULL) return head; ListNode* pNewHead = head; while(pNewHead->next!=NULL) pNewHead = pNewHead->next; reverse(head); return pNewHead; } ListNode* reverse(ListNode* head) { if(head->next == NULL) return head; else { ListNode* tail = reverse(head->next); tail->next = head; tail = tail->next; tail->next = NULL; return tail; } }};
0 0
- [LeetCode]Reverse Linked List
- [Leetcode] Reverse Linked List
- leetcode Reverse Linked List
- [LeetCode] Reverse Linked List
- [LeetCode]Reverse Linked List
- Leetcode---Reverse Linked List
- [leetcode] Reverse Linked List
- [leetcode]Reverse Linked List
- Leetcode Reverse Linked List
- [leetcode] Reverse Linked List
- leetcode Reverse Linked List
- Reverse Linked List[LeetCode]
- leetcode--Reverse Linked List
- LeetCode Reverse Linked List
- leetcode: Reverse Linked List
- [leetcode] Reverse Linked List
- LeetCode - Reverse Linked List
- LeetCode || Reverse Linked List
- splash启动速度优化
- Linux下的iwpriv(iwlist、iwconfig)的简单应用
- openCV整理的资料
- VS2010项目转换到VS2013调试运行错误:IIS8.0 详细错误 - 500.23
- 函数
- LeetCode || Reverse Linked List
- thinkPHP查询方法
- 【Unity】Unity3D教程:实现基于Socket通讯的公共聊天室
- ListView 和 Adapter 使用
- jsp获取客户端信息和服务器信息
- redis集群基本测试分析
- 如何在tiptop 4GL程序中判断客户端机器某个文件是否存在
- 1年来关于android开发的一些破烂的经验 1/2
- mysql cmd常用命令