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中设置变量访问权限的方法
Apr 27 Python
Python实现判断一个字符串是否包含子串的方法总结
Nov 21 Python
python筛选出两个文件中重复行的方法
May 31 Python
Python subprocess库的使用详解
Oct 26 Python
Python数据类型之Set集合实例详解
May 07 Python
python中使用ctypes调用so传参设置遇到的问题及解决方法
Jun 19 Python
tensorflow:指定gpu 限制使用量百分比,设置最小使用量的实现
Feb 06 Python
python GUI库图形界面开发之PyQt5日期时间控件QDateTimeEdit详细使用方法与实例
Feb 27 Python
python如何编写win程序
Jun 08 Python
使用tensorflow根据输入更改tensor shape
Jun 23 Python
python 抓取知乎指定回答下视频的方法
Jul 09 Python
python3 os进行嵌套操作的实例讲解
Nov 19 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
PHP5 安装方法
2007/01/15 PHP
php 来访国内外IP判断代码并实现页面跳转
2009/12/18 PHP
PHP网站安装程序制作的原理、步骤、注意事项和示例代码
2010/08/01 PHP
利用PHP扩展vld查看PHP opcode操作步骤
2013/03/04 PHP
教你在header中隐藏php的版本信息
2016/08/10 PHP
php 截取utf-8格式的字符串实例代码
2016/10/30 PHP
Laravel5.* 打印出执行的sql语句的方法
2017/07/24 PHP
PHP实现一个多功能购物网站的案例
2017/09/13 PHP
JQuery学习笔录 简单的JQuery
2012/04/09 Javascript
js克隆对象、数组的常用方法介绍
2013/09/26 Javascript
javascript面向对象之共享成员属性与方法及prototype关键字用法
2015/01/13 Javascript
ES6中Proxy与Reflect实现重载(overload)的方法
2017/03/30 Javascript
Angularjs自定义指令Directive详解
2017/05/27 Javascript
Vue.js组件通信的几种姿势
2017/10/23 Javascript
redux-saga 初识和使用
2018/03/10 Javascript
JS和Canvas实现图片的预览压缩和上传功能
2018/03/30 Javascript
JS秒杀倒计时功能完整实例【使用jQuery3.1.1】
2019/09/03 jQuery
[01:19:23]2018DOTA2亚洲邀请赛 4.5 淘汰赛 Mineski vs VG 第二场
2018/04/06 DOTA
[51:14]LGD vs VP 2018国际邀请赛淘汰赛BO3 第一场 8.21
2018/08/22 DOTA
[29:16]完美世界DOTA2联赛决赛日 Inki vs LBZS 第三场 11.08
2020/11/10 DOTA
python client使用http post 到server端的代码
2013/02/10 Python
使用Python的Tornado框架实现一个Web端图书展示页面
2016/07/11 Python
python下setuptools的安装详解及No module named setuptools的解决方法
2017/07/06 Python
代码讲解Python对Windows服务进行监控
2018/02/11 Python
python3+PyQt5泛型委托详解
2018/04/24 Python
python机器学习之KNN分类算法
2018/08/29 Python
Python Selenium 设置元素等待的三种方式
2020/03/18 Python
加拿大约会网站:EliteSingles.ca
2018/01/12 全球购物
乌克兰时尚鞋子和衣服购物网站:Born2be
2018/05/24 全球购物
我的网上商城创业计划书
2013/12/26 职场文书
班长演讲稿范文
2014/04/24 职场文书
校庆口号
2014/06/20 职场文书
2015年平安创建工作总结
2015/04/29 职场文书
2015年纪委工作总结
2015/05/13 职场文书
html实现弹窗的实例
2021/06/09 HTML / CSS
浅谈redis的过期时间设置和过期删除机制
2022/03/18 MySQL