力扣2094题解

记录:

2025.5.12

题目:

思路:

暴力遍历。

解题步骤:

1.统计数字出现次数:使用数组cnt来记录输入数组中每个数字的出现次数。

2.生成三位偶数:通过循环从100开始,每次递增2,生成所有三位偶数。

3.检查有效性:对于每个生成的三位偶数,分解其每一位数字,并统计每个数字的使用次数。如果任何一个数字的使用次数超过原数组中的次数,则跳过该数;否则将其加入结果列表。

4.返回结果:将结果列表转换为数组并返回。

代码:

java 复制代码
class Solution {
    public int[] findEvenNumbers(int[] digits) {
        int[] cnt = new int[10];
        for (int d : digits) {
            cnt[d]++;
        }

        List<Integer> ans = new ArrayList<>();
        next:
        for (int i = 100; i < 1000; i += 2) { 
            int[] c = new int[10];
            for (int x = i; x > 0; x /= 10) { 
                int d = x % 10;
                if (++c[d] > cnt[d]) { 
                    continue next; 
                }
            }
            ans.add(i);
        }
        return ans.stream().mapToInt(i -> i).toArray();
    }
}

复杂度:

O(N∗Log10(N))

O(1)

相关推荐
Gorway13 分钟前
解析残差网络 (ResNet)
算法
拖拉斯旋风24 分钟前
LeetCode 经典算法题解析:优先队列与广度优先搜索的巧妙应用
算法
Wect26 分钟前
LeetCode 207. 课程表:两种解法(BFS+DFS)详细解析
前端·算法·typescript
灵感__idea14 小时前
Hello 算法:众里寻她千“百度”
前端·javascript·算法
Wect1 天前
LeetCode 130. 被围绕的区域:两种解法详解(BFS/DFS)
前端·算法·typescript
NAGNIP1 天前
一文搞懂深度学习中的通用逼近定理!
人工智能·算法·面试
颜酱2 天前
单调栈:从模板到实战
javascript·后端·算法
CoovallyAIHub2 天前
仿生学突破:SILD模型如何让无人机在电力线迷宫中发现“隐形威胁”
深度学习·算法·计算机视觉
CoovallyAIHub2 天前
从春晚机器人到零样本革命:YOLO26-Pose姿态估计实战指南
深度学习·算法·计算机视觉
CoovallyAIHub2 天前
Le-DETR:省80%预训练数据,这个实时检测Transformer刷新SOTA|Georgia Tech & 北交大
深度学习·算法·计算机视觉