Leetcode|136. Single Number 迈不过友情╰ 2022-05-25 12:48 121阅读 0赞 【问题描述】 Given a non-empty 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? Example 1: Input: [2,2,1] Output: 1 Example 2: Input: [4,1,2,1,2] Output: 4 【解题思路】 思路一:暴力解法,对于每一个数字遍历vector,两重循环,时间复杂度n^2((⊙o⊙)…放弃!) 思路二:运用异或操作,0+a=a,a+b=b+a,eg: 对于\[4,1,2,1,2\],可以认为是\[1,1,2,2,4\],最后的结果就是4 class Solution { public: int singleNumber(vector<int>& nums) { int result=0; for(int i=0;i<nums.size();i++){ result=result^nums[i]; } return result; } };
还没有评论,来说两句吧...