LeetCode 599. 两个列表的最小索引总和(哈希map)
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 599. 两个列表的最小索引总和(哈希map)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 題目
假設Andy和Doris想在晚餐時選擇一家餐廳,并且他們都有一個表示最喜愛餐廳的列表,每個餐廳的名字用字符串表示。
你需要幫助他們用最少的索引和找出他們共同喜愛的餐廳。
如果答案不止一個,則輸出所有答案并且不考慮順序。
你可以假設總是存在一個答案。
來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/minimum-index-sum-of-two-lists
著作權歸領扣網絡所有。商業轉載請聯系官方授權,非商業轉載請注明出處。
2. 解題
class Solution { public:vector<string> findRestaurant(vector<string>& list1, vector<string>& list2) {unordered_map<string,int> r1;int min = INT_MAX;vector<string> ans;for(int i = 0; i < list1.size(); ++i)r1[list1[i]] = i;for(int i = 0, sum; i < list2.size(); ++i){if(r1.count(list2[i])){sum = r1[list2[i]]+i;if(sum < min){min = sum;ans.clear();ans.push_back(list2[i]);}else if(sum == min)ans.push_back(list2[i]);}}return ans;} };152 ms 32.4 MB
總結
以上是生活随笔為你收集整理的LeetCode 599. 两个列表的最小索引总和(哈希map)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LeetCode 135. 分发糖果(D
- 下一篇: [Hands On ML] 6. 决策树