【每日一题Day317】LC2605从两个数字数组里生成最小数字 | 哈希表

简介: 【每日一题Day317】LC2605从两个数字数组里生成最小数字 | 哈希表

从两个数字数组里生成最小数字【LC2605】

给你两个只包含 1 到 9 之间数字的数组 nums1nums2 ,每个数组中的元素 互不相同 ,请你返回 最小 的数字,两个数组都 至少 包含这个数字的某个数位。

思路

如果数组 nums1 和 nums2 有相同的数字,那么返回最小的相同数字

如果数组 nums1 和 nums2 没有相同的数字,那么返回右两个数组中最小的数字组成的最小二位数

实现

使用两个哈希表分别统计两个数组中出现的数字,边遍历边记录数组中最小的数字

统计nums2时判断nums1中是否有相同的数字出现

class Solution {
    public int minNumber(int[] nums1, int[] nums2) {
        boolean[] vis1 = new boolean[10];
        boolean[] vis2 = new boolean[10];
        int same = 10;
        int a = 10, b = 10;
        for (int num : nums1){
            a = Math.min(a, num);
            vis1[num] = true;
        }
        for (int num : nums2){
            if (vis1[num]){
                same = Math.min(same, num);
            }
            b = Math.min(b, num);
            vis2[num] = true;
        }
        if (same != 10){
            return same;
        }
        if (a < b){
            return a * 10 + b;
        }
        return b * 10 + a;
    }
}

复杂度

时间复杂度:O ( n + m )

空间复杂度:O ( C )

目录
相关文章
|
Ubuntu 安全 Linux
不用安装虚拟机,直接在Windows上面运行Linux Bash Shell,嗯!真香!!!
不用安装虚拟机,直接在Windows上面运行Linux Bash Shell,嗯!真香!!!
701 0
|
5月前
|
Python
Python 中__new__方法详解及使用
`__new__` 是 Python 中的一个特殊方法,用于控制对象的创建过程,在 `__init__` 之前执行。它是类的静态方法,负责返回一个实例。如果 `__new__` 不返回对象,`__init__` 将不会被调用。本文详细介绍了 `__new__` 的作用、特性及与 `__init__` 的区别,并通过实例演示了其在单例模式中的应用,同时对比了 Python2 和 Python3 中的写法差异。
205 0
|
8月前
|
JavaScript 前端开发 Docker
如何通过pm2以cluster模式多进程部署next.js(包括docker下的部署)
通过这些步骤,可以确保您的Next.js应用在多核服务器上高效运行,并且在Docker环境中实现高效的容器化管理。
878 44
|
11月前
|
机器学习/深度学习 数据采集 人工智能
深入理解SVM中的核函数及其应用
深入理解SVM中的核函数及其应用
580 83
|
10月前
|
存储 人工智能 数据库
Codel:AI代理工具,支持在终端、浏览器、编辑器执行复杂任务和项目
Codel是一款全自主AI代理工具,支持在终端、浏览器和编辑器中执行复杂任务和项目。它运行在沙盒化的Docker环境中,具备自主操作能力,内置浏览器和文本编辑器,所有操作记录存储于PostgreSQL数据库。Codel能够自动完成复杂任务,如创建项目结构、进行网络搜索等,适用于自动化编程、研究与开发、教育与培训以及数据科学与分析等多个领域。
291 11
Codel:AI代理工具,支持在终端、浏览器、编辑器执行复杂任务和项目
|
10月前
|
JavaScript 前端开发 测试技术
在 golang 中执行 javascript 代码的方案详解
本文介绍了在 Golang 中执行 JavaScript 代码的四种方法:使用 `otto` 和 `goja` 嵌入式 JavaScript 引擎、通过 `os/exec` 调用 Node.js 外部进程以及使用 WebView 嵌入浏览器。每种方法都有其适用场景,如嵌入简单脚本、运行复杂 Node.js 脚本或在桌面应用中显示 Web 内容。
618 15
在 golang 中执行 javascript 代码的方案详解
|
缓存 物联网 数据库
如何帮助我们改造升级原有架构——基于TDengine 平台
一、简介 TDengine 核心是一款高性能、集群开源、云原生的时序数据库(Time Series Database,TSDB),专为物联网IoT平台、工业互联网、电力、IT 运维等场景设计并优化,具有极强的弹性伸缩能力。同时它还带有内建的缓存、流式计算、数据订阅等系统功能,能大幅减少系统设计的复杂度,降低研发和运营成本,是一个高性能、分布式的物联网IoT、工业大数据平台。 二、TDengine 功能与组件 TDengine 社区版是一开源版本,采用的是 AGPL 许可证,它具备高效处理时序数据所需要的所有功能,包括: SQL 写入、无模式写入和通过第三方工具写入 S标准 SQL 查
280 12
|
存储 编译器 C语言
【C语言】学生管理系统:完整模拟与实现(一)
【C语言】学生管理系统:完整模拟与实现
219 1
|
存储 NoSQL 关系型数据库
Redis系列学习文章分享---第一篇(Redis快速入门之初始Redis--NoSql+安装redis+客户端+常用命令)
Redis系列学习文章分享---第一篇(Redis快速入门之初始Redis--NoSql+安装redis+客户端+常用命令)
267 1
|
人机交互 领域建模 数据库
DDD中领域故事的作用
【8月更文挑战第14天】
216 0