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 相关文章推荐
用pywin32实现windows模拟鼠标及键盘动作
Apr 22 Python
python格式化字符串实例总结
Sep 28 Python
Python脚本文件打包成可执行文件的方法
Jun 02 Python
Python下载指定页面上图片的方法
May 12 Python
Python实现冒泡排序的简单应用示例
Dec 11 Python
django 多数据库配置教程
May 30 Python
python进行文件对比的方法
Dec 24 Python
python判断一个对象是否可迭代的例子
Jul 22 Python
Python 硬币兑换问题
Jul 29 Python
python将三维数组展开成二维数组的实现
Nov 30 Python
python连接mysql有哪些方法
Jun 24 Python
详解Java中一维、二维数组在内存中的结构
Feb 11 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/10/23 PHP
PHP把空格、换行符、中文逗号等替换成英文逗号的正则表达式
2014/05/04 PHP
PHP计算指定日期所在周的开始和结束日期的方法
2015/03/24 PHP
PHP实现求两个字符串最长公共子串的方法示例
2017/11/17 PHP
使用jscript实现二进制读写脚本代码
2008/06/09 Javascript
javascript EXCEL 操作类代码
2009/07/30 Javascript
如何让浏览器支持jquery ajax load 前进、后退功能
2014/06/12 Javascript
JavaScript返回网页中超链接数量的方法
2015/04/03 Javascript
jQuery实现点击按钮弹出可关闭层的浮动层插件
2015/09/19 Javascript
JavaScript对HTML DOM使用EventListener进行操作
2015/10/21 Javascript
使用jQuery实现Web页面换肤功能的要点解析
2016/05/12 Javascript
jQuery实现iframe父窗体和子窗体的相互调用
2016/06/17 Javascript
js实现四舍五入完全保留两位小数的方法
2016/08/02 Javascript
浅析$(function) ready和onload 的区别
2016/09/03 Javascript
AngularJS实现星星等级评分功能
2016/09/24 Javascript
在vue中给列表中的奇数行添加class的实现方法
2018/09/05 Javascript
JS高阶函数原理与用法实例分析
2019/01/15 Javascript
python简单实现基于SSL的IRC bot实例
2015/06/15 Python
Python用5行代码写一个自定义简单二维码
2018/10/21 Python
redis数据库及与python交互用法简单示例
2019/11/01 Python
python GUI库图形界面开发之PyQt5输入对话框QInputDialog详细使用方法与实例
2020/02/27 Python
jupyter notebook 增加kernel教程
2020/04/10 Python
Pytorch自定义Dataset和DataLoader去除不存在和空数据的操作
2021/03/03 Python
英国最大的LED专业零售商:Led Hut
2018/03/16 全球购物
类的返射机制中的包及核心类
2016/09/12 面试题
Servlet如何得到客户端机器的信息
2014/10/17 面试题
法律专业实习鉴定
2013/12/22 职场文书
会计专业个人求职信范文
2014/01/08 职场文书
英语简历自我评价
2014/01/26 职场文书
财务务虚会发言材料
2014/10/20 职场文书
实习指导教师评语
2014/12/30 职场文书
伊索寓言读书笔记
2015/06/30 职场文书
作文之亲情600字
2019/09/23 职场文书
在pycharm中无法import所安装的库解决方案
2021/05/31 Python
Vue.js中v-for指令的用法介绍
2022/03/13 Vue.js
详解Golang如何实现支持随机删除元素的堆
2022/09/23 Python