美文网首页
leetcode 136

leetcode 136

作者: xbinng | 来源:发表于2017-10-17 10:28 被阅读0次
    int singleNumber(vector<int>& nums){
    
            for(int i=0;i<nums.size()-1;i++){
                nums[i+1]=nums[i]^nums[i+1];
            }
            return nums[nums.size()-1];
        }
    
        int array[]={1,1,2,2,3,5,5};
        size_t count= sizeof(array)/sizeof(int);
        vector<int> vec(array,array+count);
        cout<<so.singleNumber(vec)<<endl;
    

    相同数异或为0,不同数异或为1,所以很容易找到数组中只出现一次的数。

    int普遍是32位,而size_t在主流平台中都是64位。
    类型名称非常直观,它的含义就是“size type”,大小的类型,也直接意味着它是sizeof运算符结果的类型。使用的时候把它当做其它的,比如,某种计数变量的类型是没有意义的,也是错误的。它唯一正确的用途就是“代表某块内存的大小”等等类似的用途,这显然很容易想到是无符号的。比如:void* malloc(size_t),这里显然参数意味着“某块内存的大小”

    size_t详细介绍

    http://jeremybai.github.io/blog/2014/09/10/size-t

    相关文章

      网友评论

          本文标题:leetcode 136

          本文链接:https://www.haomeiwen.com/subject/xswruxtx.html