[LeetCode]268. Missing Number
来源:互联网 发布:量子力学入门书籍知乎 编辑:程序博客网 时间:2024/06/05 04:38
Point: a^b^b=a.two xor operations with the same number will eliminate the number and reveal the original number. 两个相同的数异或结果为0。一个数和两个相同的数异或的结果为它自身。
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?
1.XOR
public class Solution { public int missingNumber(int[] nums) { int xor = nums.length; for(int i=0; i<nums.length; i++) xor = xor ^ i ^ nums[i]; return xor; }}
2.SUM
public int missingNumber(int[] nums) { //sum int len = nums.length; int sum = (0+len)*(len+1)/2; for(int i=0; i<len; i++) sum-=nums[i]; return sum;}
3.Binary Search
public int missingNumber(int[] nums) { //binary search Arrays.sort(nums); int left = 0, right = nums.length, mid= (left + right)/2; while(left<right){ mid = (left + right)/2; if(nums[mid]>mid) right = mid; else left = mid+1; } return left;}
阅读全文
0 0
- [leetcode] 268.Missing Number
- 【leetcode】268. Missing Number
- [leetcode] 268. Missing Number
- Leetcode 268. Missing Number
- 268. Missing Number LeetCode
- LeetCode 268. Missing Number
- 【LeetCode】268. Missing Number
- [LeetCode]268. Missing Number
- LeetCode *** 268. Missing Number
- 【leetcode】268. Missing Number
- leetcode-268. Missing Number
- LeetCode-268.Missing Number
- LeetCode 268. Missing Number
- [Leetcode] 268. Missing Number
- 【leetcode】268. Missing Number
- leetcode 268. Missing Number
- 【leetcode】268. Missing Number
- leetcode- 268. Missing Number
- 算法学习记录四(C++)--->通过前序和中序序列重建二叉树
- Docker实践7:容器与主机拷贝数据
- NumPy矩阵与数组的区别
- Android架构经验及开发规范
- MySQL主从复制常遇到的几个坑
- [LeetCode]268. Missing Number
- 工作总结2017/8/3
- gulp 版本号修改
- C++快速排序法
- 【JavaSE笔记】集合(二)_泛型
- Android 中的style和Theme的使用
- java之工厂模式
- 运行时权限
- 一些文章的链接地址