[leetcode 41] First Missing Positive
2015-01-13 19:50
316 查看
Given an unsorted integer array, find the first missing positive integer.
For example,
Given
and
Your algorithm should run in O(n) time and uses constant space.
For example,
Given
[1,2,0]return
3,
and
[3,4,-1,1]return
2.
Your algorithm should run in O(n) time and uses constant space.
class Solution { public: int firstMissingPositive(int A[], int n) { bucket_sort(A, n); for (int i = 0; i < n; i++) { if (A[i] != i+1) { return i+1; } } return n+1; } void bucket_sort(int A[], int n) { for (int i = 0; i < n; i++) { while (A[i] != i+1) { if (A[i] <= 0 || A[i] > n || A[i] == A[A[i]-1]) { break; } swap(A[i], A[A[i]-1]); } } } };
相关文章推荐
- (LeetCode 41)First Missing Positive
- leetcode question 41:First Missing Positive
- leetcode 41 First Missing Positive
- [leetcode] #41 First Missing Positive
- First Missing Positive - LeetCode 41
- LeetCode 41 First Missing Positive
- leetCode (41)--First Missing Positive
- LeetCode(41)First Missing Positive
- LeetCode41 - First Missing Positive
- [LeetCode 41] First Missing Positive
- LeetCode 41 - First Missing Positive
- [Leetcode 41] First Missing Positive
- LeetCode(41)First Missing Positive
- LeetCode_41---First Missing Positive
- LeetCode(41) First Missing Positive
- leetcode41_First Missing Positive
- LeetCode 41:First Missing Positive Number
- leetcode problem 41 -- First Missing Positive
- leetcode || 41、First Missing Positive 问题
- Leetcode 41 - First Missing Positive