在整型数组里找唯一的一个和其它元素不同的整数
来源:互联网 发布:种草 网络语言 英文 编辑:程序博客网 时间:2024/06/10 07:51
暴力办法 时间复杂度O(n^2)
int singleNumber(int* nums, int numsSize) {
for(int i = 0;i<numsSize;i++){
for(int j = i+1;j<numsSize;j++){
if(nums[i] == nums[j]){
break;
}
if(j == numsSize)
return nums[i];
}
}
return 0;
}
方法2 时间复杂度O(n),空间复杂度O(1)
利用异或操作。异或的性质1:交换律a ^ b = b ^ a,性质2:0 ^ a = a。于是利用交换律可以将数组假想成相同元素全部相邻,于是将所有元素依次做异或操作,相同元素异或为0,最终剩下的元素就为Single Number。
int singleNumber(int* nums, int numsSize) {
int x = 0;
for (size_t i = 0; i < numsSize; ++i)
x ^= nums[i];
return x;
}
0 0
- 在整型数组里找唯一的一个和其它元素不同的整数
- 在一个整型数组中找孤立的数字
- 找数组中唯一重复的元素
- 一个整型数组里除了两个不同数字之外,其它的数字都出现了两次。请写程序找出这两个只出现一次的数字。
- 1-1000放在含有1001个元素的数组中,只有唯一的一个元素值重复,其它均只出现一次,要求速度尽可能的快
- 1-1000放在含有1001个元素的数组中,只有唯一的一个元素值重复,其它均只出现一次
- 1-1000放在含有1001个元素的数组中,只有唯一的一个元素值重复,其它均只出现一次
- 题目:1-1000放在含有1001个元素的数组中,只有唯一的一个元素值重复,其它均只出现一次
- 1-1000放在含有1001个元素的数组中,只有唯一的一个元素值重复,其它均只出现一次
- 计算一个整型数组的元素之和
- `## 将一个整数插入到已经按从小到大排序好的整型数组里##
- 算法8:一个整数数组里怎么同时找最大和最小的数,尽量优化比较次数
- 在大数组中找重复和丢失的整数
- [算法学习]给定一个整型数组,找出两个整数为指定整数的和(1)
- [算法学习]给定一个整型数组,找出两个整数为指定整数的和(2)
- [算法学习]给定一个整型数组,找出两个整数为指定整数的和(3)
- 面试题:在一个数组中有0-99之间的整数101个(数组无序),用高效方法找出其中的唯一的重复元素!
- 整型数组处理算法(三)把一个数组里的所有元素,插入到另一个数组的指定位置
- eclipse配置jetty插件
- 【笔记】Android studio 重置 DDMS面板布局
- 关于ListActivity的创建
- 二维码生成与解析代码实现
- left join ,查询结果集排序后取第一条数据
- 在整型数组里找唯一的一个和其它元素不同的整数
- 小马哥---高仿三星n9100刷机 单双卡主板外观机型对比,分n910f n9100 n910c 拆机主板详图
- smali文件语法参考
- debian旧光盘下载地址
- Android性能优化典范(一)
- PHP裁剪图片插件记录
- Caffe+Ubuntu 14.04 + Cuda6.5 新手安装记录
- 获取以太网子网掩码
- 状态压缩dp 最优配对问题