leetcode:268. Missing Number(Java)解答

原创 2016年03月11日 22:07:30

转载请注明出处:z_zhaojun的博客
原文地址
题目地址
Missing Number

Given an array containing n distinct numbers taken from 0, 1, 2, ..., n, find the one that is missing from the array.

For example,
Given nums = [0, 1, 3] return 2.

Note:
Your algorithm should run in linear runtime complexity. Could you implement it using only constant extra space complexity?

思考:前面做过几个算法,都是通过转换为二进制级别的计算来解决的,今天一看到这个题目一开始也行使用相应方法来解决,可是一时没想到好的方法。正捉急时又想到可以设定一个值,让它等于n!,然后去除以数组中非0数,结果又发现就是设一个long型的值也只能存到48!。不过这倒是让我灵光一闪,与其弄一个阶乘出来还不如弄一个“^”来连接0到n,要知道2个相同的数异或的结果为零,因此就可以弄一个0异或到n的值来依次异或数组中的每个值,结果就是缺失的那一个数。

具体代码(Java):

public class Solution {
    public int missingNumber(int[] nums) {
        int xor = 0;
        for(int i = 0; i < nums.length; i++) {
            xor ^= i ^ nums[i];
        }
        return xor ^ nums.length;
    }
}
版权声明:本文为博主原创文章,转载请注明出处。博客首页:http://blog.csdn.net/u012975705。订阅:http://blog.csdn.net/u012975705/rss/list

Missing Number(讲解一个非常好的方法)

题目名称 Missing Number—LeetCode链接描述 Given an array containing n distinct numbers taken from 0, 1, 2, ...
  • oNever_say_love
  • oNever_say_love
  • 2015年10月26日 09:26
  • 479

268. Missing Number(重要!)

Given an array containing n distinct numbers taken from 0, 1, 2, ..., n, find the one that is miss...
  • gao1440156051
  • gao1440156051
  • 2016年07月13日 16:46
  • 346

leetcode 268: Missing Number

Missing Number Total Accepted: 10033 Total Submissions: 31720 Given an array containin...
  • xudli
  • xudli
  • 2015年09月08日 09:19
  • 2194

无法debug断点跟踪JDK源代码——missing line number attributes的解决方法

无法debug断点跟踪JDK源代码——missing line number attributes的解决方法 在项目工程->Properties->Java Build Path->...
  • happyrabbit456
  • happyrabbit456
  • 2016年01月15日 15:17
  • 514

算法题——Missing Number(JAVA)

题目描述: Given an array containing n distinct numbers taken from 0, 1, 2, …, n, find the one that is m...
  • ivyusing
  • ivyusing
  • 2017年02月26日 20:54
  • 116

Missing Number 丢失的数字

class Solution { public: int missingNumber(vector& nums) { sort(nums.begin(),nums.end())...
  • hk121
  • hk121
  • 2017年12月25日 14:40
  • 40

关于protobuf中的field_number范围的解释

关于protobuf中的field_number范围的解释 以下是来自Google Protobuf Documents里的一句话: As you can see, each fiel...
  • xxy0403
  • xxy0403
  • 2017年02月17日 10:23
  • 675

leetcode 204题求素数个数

Description: Count the number of prime numbers less than a non-negative number, n   提示晒数法: http://e...
  • wangyaninglm
  • wangyaninglm
  • 2015年04月28日 22:20
  • 2132

[Leetcode]287. Find the Duplicate Number简单解法及解释 双指针复杂度O(n)

题目链接:Find the Duplicate Number Given an array nums containing n + 1 integers where each integer is...
  • u011613729
  • u011613729
  • 2016年01月01日 11:34
  • 4274

leetcode全部题目答案

32. Longest Valid Parentheses Given a string containing just the characters '(' and ')', find...
  • cslbupt
  • cslbupt
  • 2016年12月03日 15:35
  • 4734
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:leetcode:268. Missing Number(Java)解答
举报原因:
原因补充:

(最多只允许输入30个字)