博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[leetcode]First Missing Positive @ Python
阅读量:6069 次
发布时间:2019-06-20

本文共 718 字,大约阅读时间需要 2 分钟。

原题地址:https://oj.leetcode.com/problems/first-missing-positive/

题意:

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.

解题思路:要求时间复杂度为O(n)和常数空间。又是一个tricky的解法。

class Solution:    # @param A, a list of integers    # @return an integer    # @a very subtle solution    def firstMissingPositive(self, A):        n=len(A)        for i in range(n):            if A[i]<=0: A[i]=n+2        for i in range(n):            if abs(A[i])<=n:                curr=abs(A[i])-1                A[curr]=-abs(A[curr])        for i in range(n):            if A[i]>0: return i+1        return n+1

 

转载地址:http://qkfgx.baihongyu.com/

你可能感兴趣的文章
loj2542「PKUWC2018」随机游走
查看>>
bzoj2564集合的面积
查看>>
Vue搭建后台项目
查看>>
app启动过程
查看>>
docker的四种网络模式
查看>>
MVC,MVP 和 MVVM 的图示
查看>>
localStorage
查看>>
etherlime-3-Etherlime Library API-Deployed Contract Wrapper
查看>>
docker swarm英文文档学习-8-在集群中部署服务
查看>>
毕业生是怎么一步步给培训班骗去学编程的
查看>>
java泛型中<?>和<T>有什么区别?
查看>>
oracle 12c使用问题总结
查看>>
冒泡排序
查看>>
Linux系统概要
查看>>
玩转树莓派 - 添加定时任务
查看>>
iphone-common-codes-ccteam源代码 CCLanguage.h
查看>>
基于WDF的PCI/PCIe接口卡Windows驱动程序(5)-如何为硬件移植驱动程序
查看>>
团队工作第四次推进之——软件设计规格说明书
查看>>
RepositoryBase文件解析
查看>>
cocos2d-x代码阅读笔记 - 入口
查看>>