Leecode刷题之旅-C语言/python-136只出现一次的数字
2024-08-29 06:45:32
/*
* @lc app=leetcode.cn id=136 lang=c
*
* [136] 只出现一次的数字
*
* https://leetcode-cn.com/problems/single-number/description/
*
* algorithms
* Easy (59.12%)
* Total Accepted: 48.6K
* Total Submissions: 82.2K
* Testcase Example: '[2,2,1]'
*
* 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。
*
* 说明:
*
* 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?
*
* 示例 1:
*
* 输入: [2,2,1]
* 输出: 1
*
*
* 示例 2:
*
* 输入: [4,1,2,1,2]
* 输出: 4
*
*/
int singleNumber(int* nums, int numsSize) {
int i,j;
int res;
for(i=;i<numsSize;i++){
for(j=i+;j<numsSize;j++){
if(nums[j]==nums[i]){
nums[i]=;
nums[j]=;
break;
}
}
}
for(i=;i<numsSize;i++){
if(nums[i]!=){
res = nums[i];
}
}
return res;
}
这是自己的思路,耗时比较大。。。而且也比较侥幸。
把相同的数都变为0,最后那个不为0的数输出就是结果。(看来测试用例没有0这一项。。。)
参考别人的算法。(看到后惊了)
/*
* @lc app=leetcode.cn id=136 lang=c
*
* [136] 只出现一次的数字
*
* https://leetcode-cn.com/problems/single-number/description/
*
* algorithms
* Easy (59.12%)
* Total Accepted: 48.6K
* Total Submissions: 82.2K
* Testcase Example: '[2,2,1]'
*
* 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。
*
* 说明:
*
* 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?
*
* 示例 1:
*
* 输入: [2,2,1]
* 输出: 1
*
*
* 示例 2:
*
* 输入: [4,1,2,1,2]
* 输出: 4
*
*/
int singleNumber(int* nums, int numsSize) {
int result = nums[];
for (int i = ; i < numsSize; i++)
{
result ^= nums[i]; }
return result;
}
运算符(^)它的作用是两个数的二进制中的每一个比特位,形同为0,不同则为1.即(1 ^ 1 = 0,50 ^ 50 = 0,0 ^ 100 = 100),那如果将这组数据每一位都^则最后的出的那个结果就是只出现一次的那个数。
真的
最新文章
- 高级java必会系列一:zookeeper分布式锁
- scrollView中的pagingEnabled的功能
- Android 使用dagger2进行依赖注入(基础篇)
- 如何使用和了解ALTERA的IP核
- 使用typeid(变量或类型).name()来获取常量或变量的类型---gyy整理
- JavaScript学习心得(三)
- 使用Erlang和Yaws开发REST式的服务
- Android可以换行的布局
- 弹出层之2:JQuery.BlockUI
- vue app混合开发蓝牙串口连接(报错java.io.IOException: read failed, socket might closed or timeout, read ret: -1;at android.bluetooth.BluetoothSocket.connect at js/BluetoothTool.js:329)
- css内外边距属性
- 解题报告 『机器翻译(vector)』
- netcore 下加密遇到的问题
- python技巧 python2中的除法结果为0
- 数据库的连接使用——使用ADO.NET连接数据库
- CC2 条理分明-----AACTP教你谈恋爱
- GIS案例学习笔记-多边形内部缓冲区地理模型
- pure框架
- 福利,一张图看懂IT售前工程师修炼之道
- Spark之 Spark Streaming整合kafka(并演示reduceByKeyAndWindow、updateStateByKey算子使用)