【LeetCode】Partition List
2014-05-26 14:14
288 查看
题目描述:
Given a linked list and a value x, partition it such that all nodes less than x come before nodes greater than or equal to x.
You should preserve the original relative order of the nodes in each of the two partitions.
For example,
Given
return
考察的链表处理。如果在原链表上改变指向来获取最终答案会非常麻烦。比较简洁的方式是将x左边和右边的节点分别连进新的链表,最后将两个链表拼起来。
代码:
Given a linked list and a value x, partition it such that all nodes less than x come before nodes greater than or equal to x.
You should preserve the original relative order of the nodes in each of the two partitions.
For example,
Given
1->4->3->2->5->2and x = 3,
return
1->2->2->4->3->5.
考察的链表处理。如果在原链表上改变指向来获取最终答案会非常麻烦。比较简洁的方式是将x左边和右边的节点分别连进新的链表,最后将两个链表拼起来。
代码:
class Solution { public: ListNode *partition(ListNode *head, int x) { ListNode *a = new ListNode(0); ListNode *b = new ListNode(0); ListNode *small(a), *large(b); while (head){ if (head->val < x){ small->next = head; small = small->next; } else{ large->next = head; large = large->next; } head = head->next; } large->next = NULL; small->next = b->next; return a->next; } };
相关文章推荐
- LeetCode - Refresh - Partition List
- leetcode--Partition List
- leetcode 086 Partition List
- leetcode - Partition List
- LeetCode-86-Partition List 链表
- LeetCode-Partition List
- [leetcode] Partition List
- leetcode: Partition List
- LeetCode_Partition List
- [LeetCode] Partition List
- LeetCode 之 Partition List
- leetcode[86]Partition List
- [leetcode]Partition List
- LeetCode-Partition List-分割链表-链表操作
- [leetcode] Partition List
- Partition List 分类: Leetcode(链表) 2015-03-03 21:13 29人阅读 评论(0) 收藏
- 【LeetCode】Partition List
- leetcode-Partition List
- [LeetCode] Partition List 解题报告
- LeetCode-Partition List