当前位置: 首页 > news >正文

leetcode hot100数组:缺失的第一个正数

为了知道第一个缺失的正数,可以将所有的整数按照顺序放到数组里面,然后遍历数组,哪个地方不是对应的正数,那么就缺失了这个地方的对应的正数。

需要放进数组进行排列的数据需要满足要求:正数、大小小于等于数组大小的数

如何进行排列,只需要遍历到某个索引,然后将这个地方的数据放到合适的地方就行了。应当让这两个数交换:nums[i] 和nums[nums[i]-1],之所以减一就是为了满足上述要求。那么交换一次就行了吗?不行,因为交换过来的数不一定就是放到了合适的位置,所以需要while循环

class Solution {

    public int firstMissingPositive(int[] nums) {

        for(int i = 0;i<nums.length;i++){

            int cur = nums[i];

            while(cur>0&&cur<=nums.length&&cur!=nums[cur-1]){

                int temp = cur;

                nums[i] = nums[cur-1];

                nums[cur-1] = cur;

                cur = nums[i];

            }

        }

        for(int i = 0;i<nums.length;i++){

            if(nums[i]!=i+1){

                return i+1;

            }

        }

        return nums.length+1;

    }

}

http://www.lryc.cn/news/623055.html

相关文章:

  • Winsows系统去除右键文件显示的快捷列表
  • Win11家庭版docker安装Minio
  • windows环境下使用vscode以及相关插件搭建c/c++的编译,调试环境
  • 93、23种设计模式之抽象工厂模式
  • MySQL建表练习
  • GaussDB 数据库架构师修炼(十三)安全管理(3)-数据库审计
  • 人工智能中的(特征选择)数据过滤方法和包裹方法
  • Linux 下 安装 matlab 2025A
  • 安卓11 12系统修改定制化_____修改系统 解锁system分区 去除data加密 自由删减系统应用
  • python线程学习
  • Leetcode 14 java
  • AI 云电竞游戏盒子:从“盒子”到“云-端-芯”一体化竞技平台的架构实践
  • WSL 配置文件 wsl.conf 设置
  • Windows 基于ACL(访问控制列表)的权限管理
  • LeetCode 55.跳跃游戏:贪心策略下的可达性判断
  • Windows 操作系统 - Windows 恢复浏览器标题栏颜色
  • tensorrt-llm0.20.0:Prometheus3.5.0通过间接采集,进行性能指标分析
  • AirReceiverLite:轻松实现手机隔空投屏
  • 自动驾驶中的传感器技术24.1——Camera(16)
  • 电路方案分析(二十二)适用于音频应用的25-50W反激电源方案
  • 40 C++ STL模板库9-容器2-vector
  • 下载数据集文件夹权限错误问题解决方案
  • PHP域名授权系统网站源码/授权管理工单系统/精美UI/附教程
  • 西门子SMART PLC监控时间戳问题BUG修复
  • weapp:按钮去除背景
  • 云计算-Kubernetes+Istio 实现金丝雀发布:流量管理、熔断、流量镜像、ingreess、污点及pv案例实战
  • leetcode_42 接雨水
  • H20芯片与中国的科技自立:一场隐形的博弈
  • 内网穿透实战笔记 1panel 面板部署 frps,Windows 部署 frpc
  • Win11和Win10共享打印机提示709用添加Windows凭据来解决的小方法