zoukankan      html  css  js  c++  java
  • leetcode——136. 只出现一次的数字

    class Solution:
        def singleNumber(self, nums) -> int:
            k={}
            i=0
            while i < len(nums):
                m=nums[i]
                if m in k.keys():
                    k[m]=2
                    i+=1
                else:
                    k[m]=1
                    i+=1
            for i,j in k.items():
                if j==1:
                    return i

    用字典形式做的。

    执行用时 :124 ms, 在所有 Python3 提交中击败了68.54%的用户
    内存消耗 :16.1 MB, 在所有 Python3 提交中击败了5.03%的用户
     
    应该还可以简化:
    但是这样以后并没有优化到:
    class Solution:
        def singleNumber(self, nums) -> int:
            k={}
            i=0
            while i < len(nums):
                m=nums[i]
                if m in k.keys():
                    del k[m]
                    i+=1
                else:
                    k[m]=1
                    i+=1
            for i,j in k.items():
                return i
     
    耗时152ms
     
    用了popitems()之后,性能有所优化:
    class Solution:
        def singleNumber(self, nums) -> int:
            k={}
            i=0
            while i < len(nums):
                m=nums[i]
                if m in k.keys():
                    del k[m]
                    i+=1
                else:
                    k[m]=1
                    i+=1
            return k.popitem()[0]

    执行用时108ms,击败了78%的用户。

                                                                                                  ——2019.9.30

     
     
     
    位运算好神奇呀
    public int singleNumber(int[] nums) {
            //使用异或  可处理出现偶数次的情况
            int x = nums[0];
            for(int i = 1;i<nums.length;i++){
                x ^= nums[i];
            }
            return x;
        }

    ——2020.7.13

     
     
     
     
    我的前方是万里征途,星辰大海!!
  • 相关阅读:
    Java集合类总结 (三)
    Java集合类总结 (二)
    Java集合类总结 (一)
    发布方配ASP.NET网站服务器
    Ubuntu重启搜狗输入法
    常用期刊检索
    latex 写大论文图目录中图注过长解决方案
    understanding backpropagation
    Ubuntu安装Adobe Reader
    【转】pdf文件自动切白边
  • 原文地址:https://www.cnblogs.com/taoyuxin/p/11613385.html
Copyright © 2011-2022 走看看