2019-01-19 Day 14

1.缺失数字
来源LeetCode
给定一个包含 0, 1, 2, ..., n 中 n 个数的序列,找出 0 .. n 中没有出现在序列中的那个数。

示例 1:

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

输入: [9,6,4,2,3,5,7,0,1]
输出: 8
说明:
你的算法应具有线性时间复杂度。你能否仅使用额外常数空间来实现?

方法1.1 - n 相加再减去数组求解

class Solution {
public:
    int missingNumber(vector<int>& nums) {
        
        int size = nums.size() ;
        
        int res = 0;
        for( int i = 0 ;i < size ; i++)
        {
            res += (i - nums[i] );
        }
        res += size;
        return res;
        
        
    }
};

2.方法2 通过位运算求解

class Solution {
public:
    int missingNumber(vector<int>& nums) {
        
        int size = nums.size() ;
        
        int res = size;
        for( int i = 0 ;i < size ; i++)
        {
            res ^= nums[i];
            res ^=i;
        }
        res ^= 0 ;
        return res;
    }
};
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 在C语言中,五种基本数据类型存储空间长度的排列顺序是: A)char B)char=int<=float C)ch...
    夏天再来阅读 9,223评论 0 2
  • 各校历年复试机试试题 清华、北大、华科试题详细笔记部分,少笔记部分与少数leetcode【含个人整理笔记】 一、详...
    AIM外星人阅读 5,020评论 0 1
  • 每次逛公园, 妹妹总喜欢和风捉迷藏。 一,二,三…… 妹妹偷偷地躲进了花丛中。 她等了好一会儿, 还是没有看到风来...
    童心慢读阅读 6,440评论 11 31
  • 好友特爱鞋 收藏有上百双 我表示难以理解 一场冬雨 二双鞋子全湿了 一年能穿十个月的凉鞋扔了 什么都可手机搞掂 唯...
    第一闲人阅读 1,594评论 0 2
  • 自定义view--TipView TipView其实就是类似QQ长按消息弹出来的横放的提示框。通过看书和参考各位大...
    贼厉害阅读 6,984评论 1 22

友情链接更多精彩内容