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

酷站欣赏飓风seo刷排名软件

酷站欣赏,飓风seo刷排名软件,做职业规划的网站,华强北网上商城41.缺失的第一个整数 项目场景: 给你一个未排序的整数数组 nums ,请你找出其中没有出现的最小的正整数。 请你实现时间复杂度为 O(n) 并且只使用常数级别额外空间的解决方案。 示例 1: 输入:nums [1,2,0] 输出:3…

41.缺失的第一个整数 

项目场景:

给你一个未排序的整数数组 nums ,请你找出其中没有出现的最小的正整数。

请你实现时间复杂度为 O(n) 并且只使用常数级别额外空间的解决方案。

示例 1:

输入:nums = [1,2,0]
输出:3
解释:范围 [1,2] 中的数字都在数组中。

示例 2:

输入:nums = [3,4,-1,1]
输出:2
解释:1 在数组中,但 2 没有。

示例 3:

输入:nums = [7,8,9,11,12]
输出:1
解释:最小的正数 1 没有出现。

提示:

  • 1 <= nums.length <= 105
  • -231 <= nums[i] <= 231 - 1


问题描述

        求缺失的第一个整数,如果nums[i]对应的元素小于0或者大于n将此时的值置为0因为此时这个元素肯定不是缺失的正数。第二个循环为原地哈希,如果对hash_size求余不为0说明数组中存在这个数,将元素值对hash_size取余之后减1为索引,说明此时nums[i]对应的元素出现过,取余加上hash_size是为了既能保留原始信息,也能说明元素已经出现过了。最后遍历数组,如果条件不符合则返回i+1为缺失的整数,因为i为索引。

class Solution:def firstMissingPositive(self, nums: List[int]) -> int:n=len(nums)hash_size=n+1for i in range(n):if nums[i]<=0 or nums[i]>=hash_size:nums[i]=0for i in range(n):if nums[i]%hash_size!=0:pos=(nums[i]%hash_size)-1nums[pos]=(nums[pos]%hash_size)+hash_sizefor i in range(n):if nums[i]<hash_size:return i+1return hash_size

        以上为本篇文章的全部内容,感谢你抽出宝贵的时间阅读这篇文章。如果你有任何疑问或建议,欢迎在评论区留言,我们一起交流进步。愿你的代码之路越走越顺,生活充满阳光! 

http://www.dtcms.com/wzjs/211657.html

相关文章:

  • 宝塔自助建站系统源码seo优化方案案例
  • 青岛大学网站建设百度联盟是什么
  • 电脑怎样做幻灯片的网站精准营销的典型案例
  • wordpress评论推广白杨seo课程
  • 东莞做网站哪家公司好网站关键词优化推广
  • 什么网站做推广比较好谈谈对seo的理解
  • 网站管理方案如何在百度上添加自己的店铺
  • 怎么做自己的优惠券网站网站的优化公司
  • 有什么超好用的做简历的网站友情链接交换的方法
  • 外网有哪些有趣的网站对网络推广的理解
  • https下直接安装wordpress百度推广seo
  • 考试类网站如何做今日足球赛事推荐
  • 做高级电工题的网站抖音关键词排名系统
  • 各大b2b网站分析网站运营推广
  • 网站子站怎么做的怎么联系百度推广
  • 网站logo怎么做才清晰咸阳seo
  • WordPress区块的大小百度seo快速
  • 北京网站设计成功a刻百度快照在哪里找
  • 做自动化设备哪个网站百度收录批量提交入口
  • 山东做网站建设的好公司不屏蔽的国外搜索引擎
  • 自己做钓鱼网站seo关键词搜索优化
  • 北京平台网站建设创建免费网站
  • 红酒哪个网站做的好谷歌广告优化师
  • 个人博客网站制作教程运营商大数据精准营销获客
  • 西安公司网站费用seo优化技术厂家
  • 可以用 我爱乳房做网站名不东莞网站公司哪家好
  • 个人主页网站设计论文百度投诉电话24小时
  • 政府网站建设集约化服务器百度q3财报减亏170亿
  • 怎么打开域名网站网站模板哪家好
  • 大连信联科技做的网站怎么样网络推广哪个平台最好