2023-09-05每日一題
一、題目編號(hào)
2605. 從兩個(gè)數(shù)字?jǐn)?shù)組里生成最小數(shù)字
二、題目鏈接
點(diǎn)擊跳轉(zhuǎn)到題目位置
三、題目描述
給你兩個(gè)只包含 1 到 9 之間數(shù)字的數(shù)組 nums1 和 nums2 ,每個(gè)數(shù)組中的元素 互不相同 ,請(qǐng)你返回 最小 的數(shù)字,兩個(gè)數(shù)組都 至少 包含這個(gè)數(shù)字的某個(gè)數(shù)位。
示例 1:
示例 2:
提示:
- 1 <= nums1.length, nums2.length <= 9
- 1 <= nums1[i], nums2[i] <= 9
- 每個(gè)數(shù)組中,元素 互不相同 。
四、解題代碼
class Solution {
public:
int minNumber(vector<int>& nums1, vector<int>& nums2) {
int hash1[10];
memset(hash1, 0, sizeof(hash1));
int min_num1 = INT_MAX;
int min_num2 = INT_MAX;
for(int i = 0; i < nums1.size(); ++i){
min_num1 = min(min_num1, nums1[i]);
hash1[nums1[i]]++;
}
for(int i = 0; i < nums2.size(); ++i){
min_num2 = min(min_num2, nums2[i]);
hash1[nums2[i]]++;
}
for(int i = 0; i <= 9; ++i){
if(hash1[i] == 2){
return i;
}
}
if(min_num1 > min_num2){
return min_num2 * 10 + min_num1;
}
return min_num1 * 10 + min_num2;
}
};
五、解題思路
(1) 因?yàn)槊總€(gè)數(shù)組中的數(shù)字不同,所以利用哈希表來統(tǒng)計(jì)是否兩個(gè)數(shù)組中存在相同的數(shù)字,如果存在多個(gè)相同的數(shù)字,就返回最小的那個(gè),否則就返回那個(gè)唯一的相同的數(shù)字。文章來源:http://www.zghlxwxcb.cn/news/detail-702942.html
(2) 如果不存在,則各自找出分別在兩個(gè)數(shù)組中最小的那個(gè)數(shù)字,兩者中的小者放在十位,兩者中的大者放在個(gè)位,返回結(jié)果即可。文章來源地址http://www.zghlxwxcb.cn/news/detail-702942.html
到了這里,關(guān)于2023-09-05 LeetCode每日一題(從兩個(gè)數(shù)字?jǐn)?shù)組里生成最小數(shù)字)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!