题目
771. 宝石与石头文章来源:https://www.toymoban.com/news/detail-606189.html
题解思路
- 题目本身没啥难度,两个for循环就可以解决
- 但是如果使用set可以将时间复杂度优化到o(n)
注:之前python写多了,需要注意c++中string类中是char文章来源地址https://www.toymoban.com/news/detail-606189.html
代码
C++
class Solution {
public:
int numJewelsInStones(string jewels, string stones) {
unordered_map<char, int> a;
for (auto &c : jewels){
a[c] = 1;
}
int ans = 0;
for (auto &c : stones){
if (a.count(c)){
ans++;
}
}
return ans;
}
};
Python
class Solution:
def numJewelsInStones(self, jewels: str, stones: str) -> int:
dic = set()
ans = 0
for ch in jewels:
dic.add(ch)
for ch in stones:
if ch in dic:
ans += 1
return ans
到了这里,关于每日一题(注意string里是char)-771. 宝石与石头的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!