Given an unsorted integer array, find the first missing positive integer.
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.
public class Solution { public int firstMissingPositive(int[] nums) { int left = 0; int right = nums.length; while (left < right) { if (nums[left] == left + 1) { left++; } else if (nums[left] <= left || nums[left] > right || nums[left] == nums[nums[left]-1]) { nums[left] = nums[--right]; } else { swap(nums, left, nums[left]-1); } } return left + 1; } private void swap(int[] nums, int i, int j) { // TODO Auto-generated method stub int tmp = nums[i]; nums[i] = nums[j]; nums[j] = tmp; } }
相关推荐
java java_leetcode题解之First Missing Positive.java
js js_leetcode题解之41-first-missing-positive.js
c语言入门 C语言_leetcode题解之41-first-missing-positive.c
本资源包聚焦于LeetCode的第41题——"缺失的第一个正数"(First Missing Positive)。这是一道中等难度的题目,旨在检验程序员对数组处理以及优化算法的能力。下面将详细探讨这个问题的解决方案、相关的C++编程技巧...
2. **First Missing Positive**:这是一个关于数组处理的问题,要求找到数组中第一个缺失的正整数。它需要理解数组的特性并进行有效的遍历,可能使用到排序或哈希表等数据结构。 3. **Best Time to Buy and Sell ...
15. 位操作问题:例如Majority Element(多数元素)、First Missing Positive(缺失的第一个正数)等,利用位操作可以高效处理。 16. 排序和搜索问题:例如Meeting Rooms II(会议室 II),要求数组中元素的正确...
- First Missing Positive(缺失的第一个正数) - 2 Sum(两数之和) - 3 Sum(三数之和) - 3 Sum Closest(三数之和最接近) - Remove Duplicates from Sorted Array(删除有序数组中的重复项) - Remove ...
- First Missing Positive:找出最小的正整数,它在数组中未出现。 - Kth Largest Element in an Array:在未排序的数组中找到第k大的元素。 - Binary Search:二分查找法。 - First Position of Target:在有序数组...
First Missing Positive 广度优先搜索 773. Sliding Puzzle 864. Shortest Path to Get All Keys 深度优先搜索 996. Number of Squareful Arrays 拓扑排序 269. Alien Dictionary 单调栈 42. Trapping Rain Water 85...
- **数组中的第一个不重复的数字(First Missing Positive)**: 找出数组中缺失的第一个正数。 #### 排序算法 - **合并排序数组(Merge Sorted Array)**: 将两个排序数组合并成一个新的排序数组。 - **寻找数组中的中...
- First Missing Positive: 找出数组中缺失的最小正数。 - Trapping Rain Water: 给定一个数组,其中每个元素代表一个宽度为1的柱子高度,计算能接多少雨水。 - Multiply Strings: 给定两个非负整数字符串形式的数,...
268| [Missing Number](https://leetcode.com/problems/missing-number/) | [C++](./C++/missing-number.cpp) [Python](./Python/missing-number.py) | _O(n)_ | _O(1)_ | Medium | LintCode || 318| [Maximum ...
├── First Missing Positive │ ├── Readme.md │ └── solution.js ├── Trapping Rain Water │ ├── Readme.md │ └── solution.js ├── Wildcard Matching │ ├── Readme.md │ └── ...
leetcode打不开Leetcode Note Tips Tip1: Two pointer for sorted array (#Array 1. Two Sum) Tip2: Sum[i:j] = Sum[0:j] - Sum[0:i] for continuous array (# Array 560. ...First Missing Positive
leetcode 71 Python用 ...Missing Positive (HARD) leetcode 42. 收集雨水 (HARD) leetcode 44. 通配符匹配 (HARD) leetcode 45. Jump Game II (HARD) Leetcode 51. N-Queens (HARD) Leetcode 52. N-
题:**First Missing Positive 给定一个未排序的整数数组,找到第一个缺失的正整数。 例如,给定 [1,2,0] 返回 3,而 [3,4,-1,1] 返回 2。 您的算法应该在 O(n) 时间内运行并使用恒定空间。 **第 0003 题:**String ...
"First Missing Positive"是LeetCode中的一道经典问题,旨在考察我们对数组操作的理解以及对算法设计的能力。这个问题的标题是"第一个缺失的正数",其核心目标是从给定的未排序整数数组中找到最小的缺失正整数。 ...
收集面试中提出的一些重要问题。 数据结构算法面试问题面试中提出的一些重要问题的集合。 数组...missing-positive / https://leetcode.com/problems/container-with-most-water/ htt