Python 統(tǒng)計(jì)位數(shù)為偶數(shù)的數(shù)字代碼詳解
問(wèn)題描述
給出一個(gè)整數(shù)數(shù)組 nums,請(qǐng)返回其中位數(shù)為偶數(shù)的數(shù)字的個(gè)數(shù)。
示例 1:
輸入:nums = [12,345,2,6,7896]
輸出:2
解釋?zhuān)?/p>
12 是 2 位數(shù)字(位數(shù)為偶數(shù))
345 是 3 位數(shù)字(位數(shù)為奇數(shù))
2 是 1 位數(shù)字(位數(shù)為奇數(shù))
6 是 1 位數(shù)字 位數(shù)為奇數(shù))
7896 是 4 位數(shù)字(位數(shù)為偶數(shù))
因此只有 12 和 7896 是位數(shù)為偶數(shù)的數(shù)字
示例 2:
輸入:nums = [555,901,482,1771]
輸出:1
解釋?zhuān)?/p>
只有 1771 是位數(shù)為偶數(shù)的數(shù)字。
解決方案
首先看到題目中所描述的位數(shù)為偶數(shù)的數(shù)字,這時(shí)就要看清楚這個(gè)位數(shù)是指幾位數(shù)的位數(shù)還是第幾位的位數(shù)了,然后通過(guò)觀察后面給的輸出樣例,就可以發(fā)現(xiàn)是指的幾位數(shù)。那么接下來(lái)就可以開(kāi)始解決了。既然統(tǒng)計(jì)個(gè)數(shù),首先想到的就應(yīng)該是具有遍歷功能的for循環(huán)了,然后再判斷幾位數(shù),不妨用 len 函數(shù)。但是要注意的是它給的列表中的數(shù)字是數(shù)字類(lèi)型,自然是沒(méi)有 len 的,所以需要用 str 函數(shù)先將其轉(zhuǎn)化為字符串類(lèi)型,然后就可以設(shè)置條件來(lái)統(tǒng)計(jì)為偶數(shù)位的個(gè)數(shù)了。
代碼示例:
class Solution:def findNumbers(self, nums: List[int]) -> int:num = 0for i in nums:if len(str(i))%2 == 0:num += 1return num
知識(shí)點(diǎn)補(bǔ)充:
統(tǒng)計(jì)位數(shù)為偶數(shù)的數(shù)字(數(shù)學(xué) + 字符串)
給你一個(gè)整數(shù)數(shù)組 nums,請(qǐng)你返回其中位數(shù)為 偶數(shù) 的數(shù)字的個(gè)數(shù)。
示例 1:
輸入:nums = [12,345,2,6,7896]輸出:2解釋?zhuān)?2 是 2 位數(shù)字(位數(shù)為偶數(shù)) 345 是 3 位數(shù)字(位數(shù)為奇數(shù)) 2 是 1 位數(shù)字(位數(shù)為奇數(shù)) 6 是 1 位數(shù)字 位數(shù)為奇數(shù)) 7896 是 4 位數(shù)字(位數(shù)為偶數(shù)) 因此只有 12 和 7896 是位數(shù)為偶數(shù)的數(shù)字
示例 2:
輸入:nums = [555,901,482,1771]輸出:1 解釋?zhuān)?只有 1771 是位數(shù)為偶數(shù)的數(shù)字。
提示:
1 <= nums.length <= 5001 <= nums[i] <= 10^5
思路:
水題,直接轉(zhuǎn)字符串判斷數(shù)字長(zhǎng)度即可。
時(shí)間復(fù)雜度:O(NK),N是nums長(zhǎng)度,K是max(nums)長(zhǎng)度
空間復(fù)雜度:O(K)
class Solution(object): def findNumbers(self, nums): ''' :type nums: List[int] :rtype: int ''' res = 0 for num in nums: if len(str(num)) % 2 == 0: res += 1 return res
總結(jié)
到此這篇關(guān)于Python 統(tǒng)計(jì)位數(shù)為偶數(shù)的數(shù)字的文章就介紹到這了,更多相關(guān)python 統(tǒng)計(jì)偶數(shù)內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. mysql事務(wù)日志的一些問(wèn)題2. php - mysql連表統(tǒng)計(jì)查詢(xún)3. 數(shù)據(jù)庫(kù) - mysql boolean型無(wú)法插入true4. mysql主從復(fù)制 REPLICATE_DO_DB 參數(shù)從服務(wù)器reboot后每次都回滾為初始設(shè)置5. MySQL數(shù)據(jù)庫(kù)中文亂碼的原因6. MySQL不知道錯(cuò)哪里了?7. MySQL分表之后如何做排序的問(wèn)題8. mysql - 在下剛?cè)腴T(mén)sql 關(guān)于sql的語(yǔ)法詢(xún)問(wèn)9. mysql - 測(cè)試不同sql語(yǔ)句的查詢(xún)效率10. phpstuty 修改完監(jiān)聽(tīng)端口,apache無(wú)法啟動(dòng)
