Python 统计位数为偶数的数字代码详解


Posted in Python onMarch 15, 2020

问题描述

给出一个整数数组 nums,请返回其中位数为偶数的数字的个数。

示例 1:

输入:nums = [12,345,2,6,7896]

输出:2

解释:

12 是 2 位数字(位数为偶数)

345 是 3 位数字(位数为奇数) 

2 是 1 位数字(位数为奇数)

6 是 1 位数字 位数为奇数)

7896 是 4 位数字(位数为偶数) 

因此只有 12 和 7896 是位数为偶数的数字

示例 2:

输入:nums = [555,901,482,1771]

输出:1

解释:

只有 1771 是位数为偶数的数字。

解决方案

首先看到题目中所描述的位数为偶数的数字,这时就要看清楚这个位数是指几位数的位数还是第几位的位数了,然后通过观察后面给的输出样例,就可以发现是指的几位数。那么接下来就可以开始解决了。既然统计个数,首先想到的就应该是具有遍历功能的for循环了,然后再判断几位数,不妨用 len 函数。但是要注意的是它给的列表中的数字是数字类型,自然是没有 len 的,所以需要用 str 函数先将其转化为字符串类型,然后就可以设置条件来统计为偶数位的个数了。

代码示例:

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

知识点补充:

统计位数为偶数的数字(数学 + 字符串)

给你一个整数数组 nums,请你返回其中位数为 偶数 的数字的个数。

示例 1:

输入:nums = [12,345,2,6,7896]
输出:2
解释:
12 是 2 位数字(位数为偶数) 
345 是 3 位数字(位数为奇数)  
2 是 1 位数字(位数为奇数) 
6 是 1 位数字 位数为奇数) 
7896 是 4 位数字(位数为偶数)  
因此只有 12 和 7896 是位数为偶数的数字

示例 2:

输入:nums = [555,901,482,1771]
输出:1 
解释: 
只有 1771 是位数为偶数的数字。

提示:

1 <= nums.length <= 500
1 <= nums[i] <= 10^5

思路:

水题,直接转字符串判断数字长度即可。

时间复杂度:O(NK),N是nums长度,K是max(nums)长度

空间复杂度: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

总结

到此这篇关于Python 统计位数为偶数的数字的文章就介绍到这了,更多相关python 统计偶数内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
使用Python获取CPU、内存和硬盘等windowns系统信息的2个例子
Apr 15 Python
Python实现基于权重的随机数2种方法
Apr 28 Python
Python正则替换字符串函数re.sub用法示例
Jan 19 Python
Python中的浮点数原理与运算分析
Oct 12 Python
Win7下Python与Tensorflow-CPU版开发环境的安装与配置过程
Jan 04 Python
Python实现基于PIL和tesseract的验证码识别功能示例
Jul 11 Python
Python实现的逻辑回归算法示例【附测试csv文件下载】
Dec 28 Python
python调用pyaudio使用麦克风录制wav声音文件的教程
Jun 26 Python
如何将 awk 脚本移植到 Python
Dec 09 Python
解决Jupyter Notebook使用parser.parse_args出现错误问题
Apr 20 Python
Python基于pillow库实现生成图片水印
Sep 14 Python
手把手教你从PyCharm安装到激活(最新激活码),亲测有效可激活至2089年
Nov 25 Python
使用pygame编写Flappy bird小游戏
Mar 14 #Python
Python3.x+pyqtgraph实现数据可视化教程
Mar 14 #Python
浅谈selenium如何应对网页内容需要鼠标滚动加载的问题
Mar 14 #Python
Python实现鼠标自动在屏幕上随机移动功能
Mar 14 #Python
Python 读取WAV音频文件 画频谱的实例
Mar 14 #Python
Python2.7:使用Pyhook模块监听鼠标键盘事件-获取坐标实例
Mar 14 #Python
python matplotlib包图像配色方案分享
Mar 14 #Python
You might like
php中日期加减法运算实现代码
2011/12/08 PHP
php自定义函数截取汉字长度
2014/05/15 PHP
php中使用Ajax时出现Error(c00ce56e)的详细解决方案
2014/11/03 PHP
Yii实现多数据库主从读写分离的方法
2014/12/29 PHP
thinkPHP基于ajax实现的菜单与分页示例
2016/07/12 PHP
php进程daemon化的正确实现方法
2018/09/06 PHP
js setattribute批量设置css样式
2009/11/26 Javascript
js 加载并解析XML字符串的代码
2009/12/13 Javascript
解读JavaScript中 For, While与递归的用法
2013/05/07 Javascript
判定是否原生方法的JS代码
2013/11/12 Javascript
JavaScript里四舍五入函数round用法实例
2015/04/06 Javascript
JS模拟bootstrap下拉菜单效果实例
2016/06/17 Javascript
浅谈JS中的bind方法与函数柯里化
2016/08/10 Javascript
jquery实现输入框实时输入触发事件代码
2016/12/21 Javascript
echarts学习笔记之图表自适应问题详解
2017/11/22 Javascript
微信小程序实现菜单左右联动
2020/05/19 Javascript
[00:12]DAC2018 Miracle-站上中单舞台,他能否再写奇迹?
2018/04/06 DOTA
python使用PyV8执行javascript代码示例分享
2013/12/04 Python
Python虚拟环境Virtualenv使用教程
2015/05/18 Python
Python中json格式数据的编码与解码方法详解
2016/07/01 Python
python中实现数组和列表读取一列的方法
2018/04/03 Python
Django项目中用JS实现加载子页面并传值的方法
2018/05/28 Python
python中计算一个列表中连续相同的元素个数方法
2018/06/29 Python
python迭代dict的key和value的方法
2018/07/06 Python
用pycharm开发django项目示例代码
2018/10/24 Python
Python控制Firefox方法总结
2019/06/03 Python
pycharm双击无响应(打不开问题解决办法)
2020/01/10 Python
python实现加密的方式总结
2020/01/19 Python
基于python实现对文件进行切分行
2020/04/26 Python
环境科学专业研究生求职信
2013/10/02 职场文书
群众路线领导班子整改方案
2014/10/25 职场文书
投标承诺函范文
2015/01/21 职场文书
党员进社区活动总结
2015/05/07 职场文书
公司管理建议书
2015/09/14 职场文书
导游词之凤凰古城
2019/10/22 职场文书
不要在HTML中滥用div
2021/05/08 HTML / CSS