LeetCode: First Missing Positive
问题描述
Given an unsorted integer array nums, return the smallest missing positive integer.
You must implement an algorithm that runs in O(n) time and uses constant extra space.
Example1
Input: nums = [1,2,0]
Output: 3
Example2
Input: nums = [3,4,-1,1]
Output: 2
Example3
Input: nums = [7,8,9,11,12]
Output: 1
方法思路
首先注意到时间复杂度为 O(n),循环不能嵌套,本题的思路是总共使用两次循环:
- 第一次循环的目的是将每个 大于0 同时 小于等于数组长度 的正整数放在其对应的位置上,如正整数 2ÿ