LeetCode第101场双周赛
6327. 从两个数字数组里生成最小数字
题目
给你两个只包含 1 到 9 之间数字的数组 nums1 和 nums2 ,每个数组中的元素 互不相同 ,请你返回 最小 的数字,两个数组都 至少 包含这个数字的某个数位。
示例 1:
输入:nums1 = [4,1,3], nums2 = [5,7] 输出:15 解释:数字 15 的数位 1 在 nums1 中出现,数位 5 在 nums2 中出现。15 是我们能得到的最小数字。 示例 2:
输入:nums1 = [3,5,2,6], nums2 = [3,1,7] 输出:3 解释:数字 3 的数位 3 在两个数组中都出现了。
提示:
每个数组中,元素 互不相同 。
思路
可以先用一个map记录是否有相同的数字出现,因为map是自动排序的,如果遍历map遇到第一个出现两次的数字,那么说明这个数字就是可以获得的最小值,如果没有同时出现的,那么就分别找两个数组中的最小值a,b如果a>b,则交换,最小值=10*a+b;