Python 統(tǒng)計(jì)位數(shù)為偶數(shù)的數(shù)字代碼詳解
問題描述
給出一個(gè)整數(shù)數(shù)組 nums,請返回其中位數(shù)為偶數(shù)的數(shù)字的個(gè)數(shù)。
示例 1:
輸入:nums = [12,345,2,6,7896]
輸出:2
解釋:
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
解釋:
只有 1771 是位數(shù)為偶數(shù)的數(shù)字。
解決方案
首先看到題目中所描述的位數(shù)為偶數(shù)的數(shù)字,這時(shí)就要看清楚這個(gè)位數(shù)是指幾位數(shù)的位數(shù)還是第幾位的位數(shù)了,然后通過觀察后面給的輸出樣例,就可以發(fā)現(xiàn)是指的幾位數(shù)。那么接下來就可以開始解決了。既然統(tǒng)計(jì)個(gè)數(shù),首先想到的就應(yīng)該是具有遍歷功能的for循環(huán)了,然后再判斷幾位數(shù),不妨用 len 函數(shù)。但是要注意的是它給的列表中的數(shù)字是數(shù)字類型,自然是沒有 len 的,所以需要用 str 函數(shù)先將其轉(zhuǎn)化為字符串類型,然后就可以設(shè)置條件來統(tǒng)計(jì)為偶數(shù)位的個(gè)數(shù)了。
代碼示例:
class Solution: def findNumbers(self, nums: List[int]) -> int: num = 0 for i in nums: if len(str(i))%2 == 0: num += 1 return num
知識點(diǎn)補(bǔ)充:
統(tǒng)計(jì)位數(shù)為偶數(shù)的數(shù)字(數(shù)學(xué) + 字符串)
給你一個(gè)整數(shù)數(shù)組 nums,請你返回其中位數(shù)為 偶數(shù) 的數(shù)字的個(gè)數(shù)。
示例 1:
輸入:nums = [12,345,2,6,7896]
輸出:2
解釋:
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
解釋:
只有 1771 是位數(shù)為偶數(shù)的數(shù)字。
提示:
1 <= nums.length <= 500
1 <= nums[i] <= 10^5
思路:
水題,直接轉(zhuǎn)字符串判斷數(shù)字長度即可。
時(shí)間復(fù)雜度:O(NK),N是nums長度,K是max(nums)長度
空間復(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)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python的列表List求均值和中位數(shù)實(shí)例
這篇文章主要介紹了python的列表List求均值和中位數(shù)實(shí)例,具有很好對參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03python numpy中array與pandas的DataFrame轉(zhuǎn)換方式
這篇文章主要介紹了python numpy中array與pandas的DataFrame轉(zhuǎn)換方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07python實(shí)現(xiàn)切割url得到域名、協(xié)議、主機(jī)名等各個(gè)字段的例子
今天小編就為大家分享一篇python實(shí)現(xiàn)切割url得到域名、協(xié)議、主機(jī)名等各個(gè)字段的例子,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-07-07django數(shù)據(jù)模型(Model)的字段類型解析
這篇文章主要介紹了django數(shù)據(jù)模型(Model)的字段類型,文中給大家提到了django數(shù)據(jù)模型on_delete, db_constraint的使用,需要的朋友可以參考下2019-12-12Python math庫 ln(x)運(yùn)算的實(shí)現(xiàn)及原理
這篇文章主要介紹了Python math庫 ln(x)運(yùn)算的實(shí)現(xiàn)及原理,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07python基于gevent實(shí)現(xiàn)并發(fā)下載器代碼實(shí)例
這篇文章主要介紹了python基于gevent實(shí)現(xiàn)并發(fā)下載器代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11django model去掉unique_together報(bào)錯(cuò)的解決方案
本文給大家分享的是在使用django model去掉unique_together時(shí)報(bào)錯(cuò)的解決思路和具體步驟,提供給大家參考下,希望對大家學(xué)習(xí)使用django能夠有所幫助2016-10-10scrapy數(shù)據(jù)存儲在mysql數(shù)據(jù)庫的兩種方式(同步和異步)
這篇文章主要介紹了scrapy數(shù)據(jù)存儲在mysql數(shù)據(jù)庫的兩種方式(同步和異步),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-02-02