给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。【LeetCode Hot 100】
力扣热题100之第136题:
先贴代码:
class Solution {public int singleNumber(int[] nums) {//异或int ans = 0;for(int i = 0; i < nums.length;i++){ans = ans ^ nums[i];}return ans;}
}
解题思路:
这一题需要我们用到异或来解决,异或的运算法则符合以下:
所以当一个数组只有一个元素是单独的,其他的元素都出现了两次的时候,就符合异或运算的交换律和结合率,例如:1 ^ 2 ^ 2 ^ 3 ^ 3 ^ 4 ^ 4 = 1;2 ^ 1 ^ 3 ^ 2 ^ 3 = 1;
所以我们只需一次遍历数组,每次遍历都异或上这个数,就可以完成解答。
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。【LeetCode Hot 100】相关推荐
- c语言给定一个非空整数数组_C程序检查给定整数的所有位是否为一(1)
c语言给定一个非空整数数组 Problem statement: Write a C Program to check if all the bits of a given integer is on ...
- Java 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次.找出那个只出现了一次的元素. 示例 1: 输入: [2,2,1] 输出: 1示例 2: 输入: [4,1,2,1,2] 输出: ...
- 给你一个 非空 整数数组 nums ,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。
给你一个 非空 整数数组 nums ,除了某个元素只出现一次以外,其余每个元素均出现两次.找出那个只出现了一次的元素. 你必须设计并实现线性时间复杂度的算法来解决此问题,且该算法只使用常量额外空间. ...
- 重复子字符串(给定一个非空的字符串,判断它是否可以由它的一个子串重复多次构成。给定的字符串只含有小写英文字母,并且长度不超过10000。)
给定一个非空的字符串,判断它是否可以由它的一个子串重复多次构成.给定的字符串只含有小写英文字母,并且长度不超过10000. 示例 1: 输入: "abab" 输出: True ...
- 137 Single Number II 数组中除了一个数外,其他的数都出现了三次,找出这个只出现一次的数...
给定一个整型数组,除了一个元素只出现一次外,其余每个元素都出现了三次.求出那个只出现一次的数. 注意: 你的算法应该具有线性的时间复杂度.你能否不使用额外的内存来实现? 详见:https://leet ...
- 9.11排序与查找(三)——给定一个排序后的数组,包括n个整数,但这个数组已被旋转过多次,找出数组中的某个元素...
/** * 功能:给定一个排序后的数组.包括n个整数.但这个数组已被旋转过多次,次数不详.找出数组中的某个元素. * 能够假定数组元素原先是按从小到大的顺序排列的. */ /*** 思路:数组被 ...
- 给定一个排序后的数组,包含n个整数,但这个数组已被旋转过多次,找出数组中的某个元素...
2019独角兽企业重金招聘Python工程师标准>>> /** * 功能:给定一个排序后的数组,包含n个整数,但这个数组已被旋转过多次,次数不详.找出数组中的某个元素. * 可以假定 ...
- 给定一个未排序的数组,求如果数组排序之后,相邻数的最大差值。
给定一个未排序的数组,求如果数组排序之后,相邻数的最大差值.要求时间复杂度为O(n),且要求不能用非基于比较的排序. 首先,这个问题明显限制了不能使用直接排序的方式求解.因为基于比较的排序时间复杂度最 ...
- 返回一个二维整数数组中最大联通子数组的和
题目:返回一个二维整数数组中最大联通子数组的和. 要求:输入一个二维整形数组,数组里有正数也有负数.求所有子数组的和的最大值. 一.设计思想 先求出这个这个数组中的最大值,并定位,然后找出这个值周围的 ...
最新文章
- tomcat更换服务器后无法显示验证码
- JDK8中好用的日期处理-LocalDate类-LocalTime-LocalDateTIme,mysql解决时区相差13小时的问题,日期格式器DateTimeFormatter
- 第十一章:集合(一)
- java宠物店多态源代码
- 大话数据结构11:队列 链表结构
- Google C++编程风格指南(一):背景
- 指针的基本操作(10.1 Basic Pointer Operations)
- 非常漂亮的后台登录页面
- 自动驾驶1-4 驾驶分类Taxonomy of Driving
- 空洞卷积(扩张卷积dilated convolution)
- c语言的快速排序,C语言实现快速排序法(分治法)
- 控制系统伯德图、带宽及动态响应的关联性
- 43.于电脑右下角的小喇叭不见了的解决
- Altium Designer20 PCB规则设置
- 2008服务器安全修复,Windows 2008操作系统漏洞临时修复方法
- 好用的BUG、内存泄露捕捉工具 EurekaLog v6.0.3 Enterprise For D5-D2007
- 什么是特征向量和特征值
- Oracle Temp临时表空间及其故障处理
- uni-app H5打包上线流程
- 如何替换json对象中的key
热门文章
- MATLAB实验脉冲响应程序,MATLAB实验二.docx
- Windows中多指针输入技术的实现与应用(5 利用多鼠标输入框架软件实现)
- Blender笔记:动画曲线编辑器(Graph Editor)技巧
- 美国服务器传输文件特别慢,美国服务器为什么访问速度在国内很慢
- 蓝桥杯单片机 | 特训案例【进阶06】基于PCF8591的DAC模拟电压输出
- 计算机校本培训心得,信息技术校本培训心得体会.docx
- 如何从数据库数据获取到前台页面
- 中国手机企业在印度市场全面取得优势
- 论文阅读——Densely Connected Convolutional Networks
- 少年黑客对自由软件的自由漫谈