LeetCode:缺失的第一个正数【41】
2024-09-06 02:51:41
LeetCode:缺失的第一个正数【41】
题目描述
给定一个未排序的整数数组,找出其中没有出现的最小的正整数。
示例 1:
输入: [1,2,0]
输出: 3
示例 2:
输入: [3,4,-1,1]
输出: 2
示例 3:
输入: [7,8,9,11,12]
输出: 1
说明:
你的算法的时间复杂度应为O(n),并且只能使用常数级别的空间。
题目分析
Java题解
class Solution {
public int firstMissingPositive(int[] nums) {
int len = nums.length;
for(int i = 0;i<len;){
int t = nums[i];
if(t>0&&t<=len&&t!=nums[t-1])
swap(nums,i,t-1);
else
i++;
} for (int i = 0; i < len; i++) {
if (i + 1 != nums[i]) {
return i + 1;
}
}
return len + 1;
} //数组元素交换
public void swap(int[] nums,int i,int j) {
int tmp = nums[i];
nums[i] = nums[j];
nums[j] = tmp;
}
}
最新文章
- android nagative drawer图标跟标题适配
- OSI七层模型
- 《大话》之 装饰模式 Vs 建造者模式
- 【web必知必会】——图解HTTP(上)
- CSS绝对定位和相对定位 position: absolute/relative
- 小黄豆CRM软件安装
- shell复习笔记----查找与替换
- Linux2.6内核--对块IO层操作的讨论
- ubuntu 引导删除
- hihoCoder1319 岛屿周长 (bfs)
- Linux 学习笔记_12_文件共享服务_4_SSH
- 使用 ASP.NET Core MVC 创建 Web API(四)
- node+ejs模板引擎的应用
- 干货---stm32f103之DMA双缓冲__也算我为网络贡献的微薄之力
- scrapy 安装
- IE和DOM事件流
- 1.环境搭建-mysql+tomcat+myeclipse安装并配置
- Deep Q-Network 学习笔记(五)—— 改进③:Prioritized Replay 算法
- vue项目中遇到的一些问题
- Kali linux更新源
热门文章
- 基于Chrome内核(WebKit内核)定制开发DoNet浏览器
- Linux TTY介绍
- VS2005编译QT4.8.2
- MySQL命令操作(Linux平台)
- C++报错:全局变量重定义或是多次定义
- [NPM + React] Prepare a Custom React Hook to be Published as an npm Package
- BZOJ1113 海报PLA1(单调栈入门题)
- 将idea中xml文件背景颜色去除(转)
- 洛谷 P2341 [HAOI2006]受欢迎的牛 题解
- MySQL 为什么不用分区表(转载)