Single_Number
来源:互联网 发布:复杂网络的定义 编辑:程序博客网 时间:2024/06/06 11:48
题目描述:
Given an array of integers, every element appears twice except for one.
Find that single one.
Note:
Your algorithm should have a linear runtime complexity.
Could you implement it without using extra memory?
(给定一组整数,除了一个元素外,每个元素都出现两次。找到那一个。
注:
你应该有一个线性时间复杂度的算法。你能实现它,而无需使用额外的内存?)
思路:用异或(同0异一)消掉相同的数留下来的就是单独的数。例如[1,1,2,2,3],1^1^2^2^3 == 0^2^2^3 == 0^0^3 == 3.
public class Single_Number {public static int singleNumber(int[] nums) {int result = 0;for(int i=0;i<nums.length;i++){result ^= nums[i];}return result; }public static void main(String[] args) {int nums[] = {1,2,2};System.out.println(singleNumber(nums));}}
阅读全文
1 0
- Single_Number
- CentOS下SVN服务的启动与关闭
- Python3 面向对象高级
- 网卡的若干知识
- Linux各个发行版本
- 生成patch和打patch总结
- Single_Number
- 使用GIT安装laravel
- 两数相加的方法调用
- linux grep命令详解
- 20170921在VisualStudioCode上搭建arduino开发环境
- Centos 7 安装部署 zookeeper
- C++中ASCII、unicode与Utf8之间的相互转化
- 【centos】 error: command 'gcc' failed with exit status 1
- su命令和sudo命令区别