Leetcode:Partition List
2015-02-07 14:13
197 查看
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
思路:分别用两个链表,一个保存比指定数小的元素,一个保存大于等于指定数的元素,最后把第二个链表接在第一个链表之后即可。
实现代码:
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.
思路:分别用两个链表,一个保存比指定数小的元素,一个保存大于等于指定数的元素,最后把第二个链表接在第一个链表之后即可。
实现代码:
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: ListNode *partition(ListNode *head, int x) { ListNode node1(0), node2(0); ListNode *p1 = &node1, *p2 = &node2; while (head) { if (head->val < x) p1 = p1->next = head; else p2 = p2->next = head; head = head->next; } p2->next = NULL; p1->next = node2.next; return node1.next; } };
相关文章推荐
- leetcode - Partition List
- [Leetcode] Partition List
- LeetCode 86 Partition List (Python详解及实现)
- [LeetCode] Partition List
- leetcode 086 —— Partition List
- 【Leetcode 86】 Partition List
- leetcode 86: Partition List
- LeetCode No.86 Partition List
- LeetCode题解-86-Partition List
- LeetCode-Partition List
- [LeetCode] Partition List 划分链表
- [LeetCode] Partition List
- LeetCode | Partition List(partition方法处理链表)
- [Leetcode]Partition List
- [Leetcode] Partition list 划分链表
- LeetCode-Partition List
- LeetCode:Partition List
- [leetcode]Partition List
- leetcode -- Partition List
- 《leetCode》:Partition List