LeetCode初級算法--數組01:只出現一次的數字

LeetCode初級算法--數組01:只出現一次的數字

搜索微信公衆號:'AI-ming3526'或者'計算機視覺這件小事' 獲取更多算法、機器學習乾貨python

csdn:https://blog.csdn.net/baidu_31657889/git

csdn:https://blog.csdn.net/abcgkj/github

github:https://github.com/aimi-cn/AILearners面試

1、引子

這是由LeetCode官方推出的的經典面試題目清單~
這個模塊對應的是探索的初級算法~旨在幫助入門算法。咱們第一遍刷的是leetcoda推薦的題目。
查看完整的劍指Offer算法題解析請點擊github連接:
github地址算法

2、題目

給定一個非空整數數組,除了某個元素只出現一次之外,其他每一個元素均出現兩次。找出那個只出現了一次的元素。編程

說明:數組

你的算法應該具備線性時間複雜度。 你能夠不使用額外空間來實現嗎?微信

示例 1:機器學習

輸入: [2,2,1]
輸出: 1複製代碼

示例 2:學習

輸入: [4,1,2,1,2]
輸出: 4複製代碼

一、思路

本身想的思路,很簡單,建立一個字典,循環整個數組,若是改值出現不止一次,把這個數從字典中刪除,不然把這個數存在字典中,最後剩下的那個數就是咱們想要的值。

二、編程實現

python

class Solution(object):
    def singleNumber(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """
        # for i in nums:
        #     if nums.count(i)==1:
        #         return i
        s = {}
        for i in nums:
            if i in s.keys():
                s.pop(i)
            else:
                s[i]=1
        return list(s.keys())[0]複製代碼

AIMI-CN AI學習交流羣【1015286623】 獲取更多AI資料

分享技術,樂享生活:咱們的公衆號計算機視覺這件小事每週推送「AI」系列資訊類文章,歡迎您的關注!

本文由博客一文多發平臺 OpenWrite 發佈!

相關文章
相關標籤/搜索