数组代码First Missing Positive

文章结束给大家来个程序员笑话:[M]

    标题:

    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.

    分析:此题可以用一个hash数组实现,所需分配间空的小大最大为n(比如当数组为

    

    [1,2,3]时,回返的值为4

    

    )。

    代码如下:

    每日一道理
巴尔扎克说过“不幸,是天才的进升阶梯,信徒的洗礼之水,弱者的无底深渊”。风雨过后,眼前会是鸥翔鱼游的天水一色;走出荆棘,前面就是铺满鲜花的康庄大道;登上山顶,脚下便是积翠如云的空蒙山色。 在这个世界上,一星陨落,黯淡不了星空灿烂,一花凋零,荒芜不了整个春天。人生要尽全力度过每一关,不管遇到什么困难不可轻言放弃。

    int firstMissingPositive(int A[], int n) {
        int value =1;
        if(n<=0)return value;
        int *B=new int[n+1];
        for(int i=0;i<=n;i++)
        {
            B[i]=0;
        }
        for(int i=0;i<=n;i++)
        {
            if(A[i]<=n&&A[i]>=0)
              B[A[i]]=1;
        }
        value=n+1;
        for(int i=1;i<=n;i++)
        {
            if(B[i]==0)
            {
                value = i;
                break;
            }         
        }
        delete []B;
        return value;
    }

文章结束给大家分享下程序员的一些笑话语录: 人工智能今天的发展水平:8乘8的国际象棋盘其实是一个体现思维与创意的强大媒介。象棋里蕴含了天文数字般的变化。卡斯帕罗夫指出,国际象棋的合法棋步共有1040。在棋局里每算度八步棋,里面蕴含的变化就已经超过银河系里的繁星总数。而地球上很少有任何数量达到这个级别。在金融危机之前,全世界的财富总和大约是1014人民币,而地球人口只有1010。棋盘上,所有可能的棋局总数达到10120,这超过了宇宙里所有原子的总数!经典语录网

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值