12-- 缺失的第一個正數

文章目錄

  • 1.問題描述
  • 2.解題代碼

1.問題描述

給你一個未排序的整數數組,請你找出其中沒有出現的最小的正整數。

示例 1:
輸入: [1,2,0]
輸出: 3

示例 2:
輸入: [3,4,-1,1]
輸出: 2

示例 3:
輸入: [7,8,9,11,12]
輸出: 1

提示:

你的算法的時間復雜度應為O(n),并且只能使用常數級別的額外空間。

2.解題代碼

class Solution:def firstMissingPositive(self, nums: List[int]) -> int:n = len(nums)# 如果1不在列表中,則直接返回1if 1 not in nums:return 1# 將列表中小于等于0或者大于n的元素重新設置為1for i in range(n):if nums[i] <= 0 or nums[i] > n:nums[i]=1# 遍歷列表,當讀到當前數字時,將下標為(當前數字-1)的數字變為負值for i in range(n):a = abs(nums[i])-1nums[a] = -abs(nums[a])# 遍歷列表,返回第一個正數元素下標+1for i in range(n):if nums[i] > 0:return i+1# 如果沒有正數元素,則返回n+1return n+1

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/451840.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/451840.shtml
英文地址,請注明出處:http://en.pswp.cn/news/451840.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

java中的private public protected

1、public&#xff1a;public表明該數據成員、成員函數是對所有用戶開放的&#xff0c;所有用戶都可以直接進行調用 2、private&#xff1a;private表示私有&#xff0c;私有的意思就是除了class自己之外&#xff0c;任何人都不可以直接使用&#xff0c;私有財產神圣不可侵…

7款最流行的在線項目管理工具推薦

本文介紹一些非常流行的在線項目管理工具&#xff0c;希望你喜歡。 1. Apptivo 如果你是一個創業的或自由開發人員&#xff0c;或者屬于一個小型專業團隊&#xff0c;Apptivo這個項目管理軟件很值得你你研究。實質上&#xff0c;它是一個基于Web的項目管理應用&#xff0c;讓你…

VR全景看年評!PConline年度評測盛典等你來體驗

【PConline 2016年度評測】又是一年春草綠&#xff0c;馬上還有十天扒拉月2016年就快過完了。每年到這個時候&#xff0c;我們不禁都會拷問自己&#xff1a;你存到錢了么&#xff1f;娶到媳婦了么&#xff1f;買到房了么&#xff1f;答案是都沒有&#xff01;哈哈&#xff0c;這…

swagger詳解

1快速環境搭建 pom.xml文件中添加如下內容(看清楚再復制&#xff0c;此處不是全部內容) 1 <properties>2 ...3 <swagger.version>2.2.2</swagger.version>4 ...5 </properties>6 7 <dependency>8 …

13--長度最小的子數組

文章目錄1.題目要求2.解題代碼1.題目要求 給定一個含有 n 個正整數的數組和一個正整數 s &#xff0c;找出該數組中滿足其和 ≥ s 的長度最小的連續子數組&#xff0c;并返回其長度。如果不存在符合條件的連續子數組&#xff0c;返回 0。 示例&#xff1a; 輸入&#xff1a;…

HttpServletRequest 常用方法講解

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 Web服務器收到一個http請求&#xff0c;會針對每個請求創建一個HttpServletRequest和HttpServletResponse對象&#xff0c; 從客戶端取…

object中的toString方法

任何一個類都是從Object類繼承下來的&#xff0c;因此在任何一個類里面都可以重寫這個toString()方法。toString()方法的作用是當一個引用對象和字符串作連接的時候&#xff0c;或者是直接打印這個引用對象的時侯&#xff0c;這個引用對象都會自動調用toString()方法&#xff0…

東網科技榮膺2016中國大數據最佳實踐獎

11月24日&#xff0c;由中國軟件網主辦的數據趴活動圓滿落幕&#xff0c;活動現場隆重揭曉了大數據領域的重磅榜單&#xff0c;旨在對大數據領域中表現突出的企業、人物進行表彰。東網科技有限公司(以下簡稱“東網科技”)憑借大數據運營支撐平臺及在環保、煙草、教育、政府等行…

Apache Subversion 1.7.2發布,開源版本控制工具

SVN&#xff08;Subversion&#xff09;已經發布了1.7的第二個維護版本。 Apache Subversion是一個開放源碼、多用戶的版本控制系統&#xff0c;支持非 ASCII 文本和二進制數據&#xff0c;支持可在本地訪問或通過網絡訪問的數據庫和文件系統存儲庫。相對于傳統的RCS、CVS&…

react生命周期

1、初始化getDefaultProps()設置默認的props&#xff0c;也可以用dufaultProps設置組件的默認屬性。 getInitialState()在使用es6的class語法時是沒有這個鉤子函數的&#xff0c;可以直接在constructor中定義this.state。此時可以訪問this.propscomponentWillMount()在組件初始…

14--用兩個棧實現隊列

文章目錄1.題目詳情2.解題代碼1.題目詳情 用兩個棧實現一個隊列。隊列的聲明如下&#xff0c;請實現它的兩個函數 appendTail 和 deleteHead &#xff0c;分別完成在隊列尾部插入整數和在隊列頭部刪除整數的功能。(若隊列中沒有元素&#xff0c;deleteHead 操作返回 -1 ) 示例…

淺談爬蟲 《一》 ===python

淺談爬蟲 《一》 python ‘’正文之前先啰嗦一下&#xff0c;準確來說&#xff0c;在下還只是一個剛入門IT世界的菜鳥&#xff0c;工作近兩年了&#xff0c;之前做前端的時候就想寫博客來著&#xff0c;現在都轉做python了&#xff0c;如果還不開始寫點什么&#xff0c;估計時間…

Servlet全面講解

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。Servlet&#xff08;Server Applet&#xff09;&#xff0c;全稱Java Servlet。是用Java編寫的服務器端程序。Servlet 是在服務器上運行的…

你的代碼可以是優雅的,但是還有更重要的

引用軟件設計有兩種方法&#xff1a;一種是盡可能地簡單&#xff0c;這種設計明顯沒有什么缺陷&#xff1b;另一種是盡可能地復雜&#xff0c;這種設計沒有明顯的缺陷。 ——C.A.R. Hoare&#xff0c;1980年圖靈獎講座在開發過程中&#xff0c;我的口頭禪是&#xff1a; Your c…

15--0~n-1中缺失的數字

文章目錄1. 問題描述2. 解題代碼1. 問題描述 一個長度為n-1的遞增排序數組中的所有數字都是唯一的&#xff0c;并且每個數字都在范圍0&#xff5e;n-1之內。在范圍0&#xff5e;n-1內的n個數字中有且只有一個數字不在該數組中&#xff0c;請找出這個數字。 示例 1: 輸入: [0,…

如何在README中使用圖片

將圖片放在倉庫里面&#xff0c;在文件里鏈接它&#xff0c;最后 push 到 github 上。 github 圖片鏈接格式&#xff1a; (http://github.com/yourname/your-repository/raw/master/images-folder/xxx.png) 要自己設定的&#xff1a;yourname, your-repository, your-folder…

Unity中傳入任意數,轉換成分,秒,并進行倒計時換算..(兩種方式)

第一種方式是利用Unity中的協程,代碼如下: using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI;public class DemoTest : MonoBehaviour {public Text text;//測試用的數字public int MyTime 60;void Start (){//開啟協程…

內核編程小結(引用)

https://www.cnblogs.com/fanling999/p/4509785.html轉載于:https://www.cnblogs.com/endenvor/p/9006507.html

JIRA 5.0.1 發布

Atlassian公司發布了JIRA 5.0.1版本&#xff0c;該版本相比JIRA 5.0有更多改進功能。1. 管理界面的改進 將更多頁面管理轉為對話框形式。例如點擊頁面右上方的“Add New”就可實現新增issue types、sub-tasks、field configurations 、screens。2. 性能改進 解決了基于Lucene 3…

java開啟新線程的三種方法

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 方式1&#xff1a;繼承Thread類 步驟: 1):定義一個類A繼承于Java.lang.Thread類. 2):在A類中覆蓋Thread類中的run方法. 3):我們在ru…