LeetCode-1295. 统计位数为偶数的数字

这是我做过的一个题,我把它分享给你们:

这是原文链接:https://leetcode-cn.com/problems/find-numbers-with-even-number-of-digits/

如果感觉我做的还行的话,记得点赞。

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

示例 1:

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

示例 2:

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

提示:

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

解题思路:

思路分析:这道题是给定我们一个整数数组,然后让我们返回其中位数为偶数的数字个数。

有两种方法,第一种就是遍历nums数组,给每一位元素加一个空字符将其转换成字符串,然后统计其长度并对2取余,如果等于0,说明其位数是偶数,count++就行,最后返回count。

第二种方法就是不转化成字符串,直接看每一个元素是否在[10,100)或者[1000,10000)的范围内,如果是的话count++,最后返回count。
这道题就解决完成了,下面是我的网页的代码,主函数我就不写了,要验证的话自己编个主函数验证下:

class Solution {
    public int findNumbers(int[] nums) {
        int count = 0;
        for(int i = 0;i < nums.length;i++){
            /*
            if((nums[i] + "").length() % 2 == 0){
                count++;
            }
            */
            if((nums[i]>=10 && nums[i]<100) || (nums[i]>=1000 && nums[i]<10000)){
                count++;
            }
        }
        return count;
    }
}

我今天的分享就到这里,谢谢观看。

发布了38 篇原创文章 · 获赞 51 · 访问量 1184

猜你喜欢

转载自blog.csdn.net/xweiwxh/article/details/104468386