专栏首页刷题笔记【LeetCode】136. Single Number

【LeetCode】136. Single Number

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/shiliang97/article/details/102092957

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

来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/single-number 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

这道题用异或做太火了。。。。

class Solution {
public:
    int singleNumber(vector<int>& nums) {
        int num=0;
        for(auto it :nums){
            num ^= it;
        }
        return num;
    }
};

想了一个,排序然后俩俩一对儿

class Solution {
public:
    int singleNumber(vector<int>& nums) {
        int n =nums.size();
        if(n==1){
            return nums[0];
        }
        sort(nums.begin(),nums.end());
        int i=0;
        while(i+1<n){
            if(nums[i]!=nums[i+1]){
                return nums[i];
            }
            i=i+2;
        }
        return nums[i];
    }
};

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【Leet Code】1. Two Sum

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

    韩旭051
  • 【2019秋PAT乙级真题】7-3 缘分数 (20 分)

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    韩旭051
  • 【Leet Code】26. Remove Duplicates from Sorted Array

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

    韩旭051
  • LWC 54:698. Partition to K Equal Sum Subsets

    LWC 54:698. Partition to K Equal Sum Subsets 传送门:698. Partition to K Equal Sum S...

    用户1147447
  • 【LeetCode】两数之和

    Jacob丶
  • 查找数组中两数之和等于指定的数

    题目:给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。

    Melody132
  • 【LeetCode】两数之和

    给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。

    弗兰克的猫
  • ACM算法基础

    N3/6-N2/2+N/3 ~ N3/6。使用 ~f(N) 来表示所有随着 N 的增大除以 f(N) 的结果趋近于 1 的函数。

    爱撸猫的杰
  • 【LeetCode】找出数组中重复的数字day01

    居士
  • 剑指Offer题解

    在一个长度为n+1的数组里的所有数字都在1~n的范围内,所以数组中至少存在一个数字是重复的。 请找出数组中任意一个重复的数字,但不能修改输入的数组。 例如输...

    星如月勿忘初心

扫码关注云+社区

领取腾讯云代金券