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中用于转换字母为小写的lower()方法使用简介
May 19 Python
Python设计模式编程中Adapter适配器模式的使用实例
Mar 02 Python
Django实现组合搜索的方法示例
Jan 23 Python
Python list列表中删除多个重复元素操作示例
Feb 27 Python
numpy.meshgrid()理解(小结)
Aug 01 Python
通过selenium抓取某东的TT购买记录并分析趋势过程解析
Aug 15 Python
django框架两个使用模板实例
Dec 11 Python
pytorch 实现查看网络中的参数
Jan 06 Python
基于jupyter代码无法在pycharm中运行的解决方法
Apr 21 Python
Python中的xlrd模块使用原理解析
May 21 Python
Python中的 Set 与 dict
Mar 13 Python
Python读取和写入Excel数据
Apr 20 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
windows下升级PHP到5.3.3的过程及注意事项
2010/10/12 PHP
php中使用__autoload()自动加载未定义类的实现代码
2013/02/06 PHP
PHP 匿名函数与注意事项详细介绍
2016/11/26 PHP
tp5.1 框架join方法用法实例分析
2020/05/26 PHP
PHP $O00OO0=urldecode &amp; eval 解密,记一次商业源码的去后门
2020/09/13 PHP
Centos7.7 64位利用本地完整安装包安装lnmp/lamp套件教程
2021/03/09 Servers
IE DOM实现存在的部分问题及解决方法
2009/07/25 Javascript
JS操作Cookies包括(读取添加与删除)
2012/12/26 Javascript
3分钟写出来的Jquery版checkbox全选反选功能
2013/10/23 Javascript
JavaScript变量的作用域全解析
2015/08/14 Javascript
JS根据key值获取URL中的参数值及把URL的参数转换成json对象
2015/08/26 Javascript
jQuery中通过ajax的get()函数读取页面的方法
2016/02/29 Javascript
jQuery获取单击节点对象的方法
2016/06/02 Javascript
把普通对象转换成json格式的对象的简单实例
2016/07/04 Javascript
原生JS轮播图插件
2017/02/09 Javascript
详解vue渲染从后台获取的json数据
2017/07/06 Javascript
webpack构建vue项目的详细教程(配置篇)
2017/07/17 Javascript
基于Vuejs的搜索匹配功能实现方法
2018/03/03 Javascript
浅谈node中的cluster集群
2018/06/02 Javascript
vue实现todolist功能、todolist组件拆分及todolist的删除功能
2019/04/11 Javascript
Vue实现input宽度随文字长度自适应操作
2020/07/29 Javascript
javascript实现点击小图显示大图
2020/11/29 Javascript
详解template标签用法(含vue中的用法总结)
2021/01/12 Vue.js
Python脚本在Appium库上对移动应用实现自动化测试
2015/04/17 Python
python实现识别手写数字 python图像识别算法
2020/03/23 Python
python实现装饰器、描述符
2018/02/28 Python
深入浅析Python中list的复制及深拷贝与浅拷贝
2018/09/03 Python
python调用Matplotlib绘制分布点图
2019/10/18 Python
Python的pygame安装教程详解
2020/02/10 Python
浅谈keras中的batch_dot,dot方法和TensorFlow的matmul
2020/06/18 Python
python缩进长度是否统一
2020/08/02 Python
《奇妙的国际互联网》 教学反思
2014/02/25 职场文书
环境工程专业自荐信范文
2014/03/18 职场文书
群众路线个人剖析材料及整改措施
2014/11/04 职场文书
2015年三万活动总结
2015/03/25 职场文书
go语言中fallthrough的用法说明
2021/05/06 Golang