LeetCode 41. 缺失的第一个正数 First Missing Positive
给定一个未排序的整数数组,找出其中没有出现的最小的正整数。
示例 1:
输入: [1,2,0] 输出: 3
示例 2:
输入: [3,4,-1,1] 输出: 2
示例 3:
输入: [7,8,9,11,12] 输出: 1
说明:
你的算法的时间复杂度应为O(n),并且只能使用常数级别的空间。
public class Solution {public int firstMissingPositive(int[] nums) {for(int i=0;i<nums.length;i++){while(nums[i]!=i+1){if(nums[i]<=0 ||nums[i]>=nums.length|| nums[i]==nums[nums[i]-1]){break;}int temp = nums[i];nums[i] = nums[nums[i]-1];nums[temp-1] = temp;}}for(int i=0;i<nums.length;i++){if(nums[i]!=i+1)return i+1;}return nums.length+1;}
}
LeetCode 41. 缺失的第一个正数 First Missing Positive相关推荐
- Java实现 LeetCode 41 缺失的第一个正数
41. 缺失的第一个正数 给定一个未排序的整数数组,找出其中没有出现的最小的正整数. 示例 1: 输入: [1,2,0] 输出: 3 示例 2: 输入: [3,4,-1,1] 输出: 2 示例 3: ...
- [Swift]LeetCode41. 缺失的第一个正数 | First Missing Positive
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ ➤微信公众号:山青咏芝(shanqingyongzhi) ➤博客园地址:山青咏芝(https://www.cnblog ...
- LeetCode 41. 缺失的第一个正数
文章目录 1. 题目信息 2. 思路 3. 代码 1. 题目信息 给定一个未排序的整数数组,找出其中没有出现的最小的正整数. 示例 1:输入: [1,2,0] 输出: 3 示例 2:输入: [3,4, ...
- leetcode —— 41. 缺失的第一个正数
给你一个未排序的整数数组,请你找出其中没有出现的最小的正整数. 示例 1: 输入: [1,2,0] 输出: 3 解题思路: 判断数组中是否存在1,如果没有1则直接返回1,结束: 如果数组长度为1,同时 ...
- Leetcode 40组合总数(回溯)Ⅱ41缺失的第一个正数42接雨水
维护公众号:bigsai ,回复进群加入打卡,回复bigsai分享一些学习资源! 上周第一次 LeetCode 36有效的数独&37解数独(八皇后问题) 上周第二次 LeetCode 38外观 ...
- Leetcode算法Java全解答--41. 缺失的第一个正数
Leetcode算法Java全解答–41. 缺失的第一个正数 文章目录 Leetcode算法Java全解答--41. 缺失的第一个正数 题目 想法 结果 总结 代码 我的答案 大佬们的答案 测试用例 ...
- 41. 缺失的第一个正数 golang
41. 缺失的第一个正数 给你一个未排序的整数数组,请你找出其中没有出现的最小的正整数. 示例 1: 输入: [1,2,0] 输出: 3 示例 2: 输入: [3,4,-1,1] 输出: 2 示例 3 ...
- 努力前端【LeetCode-10】448. 找到所有数组中消失的数字 442. 数组中重复的数据(中等) 41. 缺失的第一个正数(困难) [鸽笼原理,数组,Map,类似No.645]
文章目录 题目描述-448 一.哈希Map 二.空间复杂度的优化--鸽笼原理 三.总结 题目描述-442 一.还是hashMap 二.继续鸽笼原理 题目描述-41 一.基础方案 二.数组模拟Map 题 ...
- 【LeetCode笔记】41. 缺失的第一个正数(Java、哈希)
文章目录 题目描述 思路 & 代码 题目描述 难点在于时空复杂度的要求 想出最优方法,需要认真理解题目. 思路 & 代码 做法:建立一个逻辑上的哈希表,令 nums[i] = i + ...
最新文章
- 如何高效推进ML模型开发和部署?Uber机器学习平台Michelangelo实践
- 阿尔伯塔大学博士毕业论文:基于图结构的自然语言处理
- ajax返回一直进入error_解决ajax返回验证的时候总是弹出error错误的方法
- 微信公众号的分享功能
- 七十四、SpringBoot 的数据缓存cache(一)
- android 弹窗 onpause,Android 下拉通知栏时Activity的生命周期——重新理解onPause()
- FP Growth算法
- 数据之路 - Python爬虫 - Scrapy框架
- 如何在ppt中打开html,如何在ppt中直接打开网页
- 基于神经网络的车牌识别系统
- 单细胞测序技术(single cell sequencing)
- 99乘法表儿歌_乘法口诀表儿歌
- 字符串函数strtolower解析
- 2020年中高级Android面试秘籍(Android基础篇)
- 【笔记】播放器 - mpv - 使用、配置
- 对C语言的关键字及部分关键字用法的简单理解
- 什么是去中心化市场(OpenBazaar)
- 云原生架构的关键技术
- python编译程序输入上网时间并计算上网费用 计算方法_编一应用程序根据上网时间计算上网费用,计算方法如下: 25元基数 ≤10小时 每小时2元 10且≤50小时 每小...
- jquery控制页面只刷新一次