【LeetCode算法练习(C++)】First Missing Positive

来源:互联网 发布:java object 类型转换 编辑:程序博客网 时间:2024/06/06 04:44

题目:
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.

链接:First Missing Positive

解法:打表,将出现的正数在表中置0,遍历列表返回第一个非0的序号。时间O(n)

class Solution {public:    int firstMissingPositive(vector<int>& nums) {        vector<int> tmp;        int len = nums.size();        if (len == 0) return 1;        for (int i = 0; i <= len; i++) {            tmp.push_back(i);        }        for (int i = 0; i < len; i++) {            if (nums[i] > 0 && nums[i] <= len) tmp[nums[i]] = 0;        }        for (int i = 0; i <= len; i++) {            if (tmp[i]) return i;        }        return len + 1;    }};

Runtime: 3 ms

阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 大姨妈不来会怎么样 大姨妈量少怎么调理 大姨妈来了不走怎么回事 大姨妈不规律怎么办 大姨妈半个月没来 例假不正常怎么调理 不来姨妈的原因 不来例假的原因有哪些 例假多怎么办 经期不调怎么调理 三个月没来大姨妈 大姨妈经常推迟 大姨妈来了可以 大姨妈为什么迟迟不来 大姨妈是什么 经期不稳定是什么原因 迟迟不来大姨妈怎么办 大姨妈为什么不来 来例假不能吃什么 大姨妈几个月不来怎么回事 经期乱了怎么办 冃经不来是什么原因 来大姨妈可以 例假推迟一周 经期紊乱怎么调理 姨妈迟迟不来怎么办 经期前有褐色分泌物 生理期推迟 怀孕现象 例假没来 例假提前半个月 大姨妈还没来怎么办 经期不规律 怎么来大姨妈 例假是什么 来大姨妈吃什么好 女生生理期应该注意什么 大姨妈什么意思 大姨妈一次流多少血 经期禁忌 什么是大姨妈