输入字符串A、字符串B,求在字符串A、字符串B中相同的字符个数。
时间: 2024-04-19 09:17:27 浏览: 62
可以使用一个哈希表来解决这个问题。首先遍历字符串A,将其中的每个字符及其出现的次数存储到哈希表中。然后遍历字符串B,对于其中的每个字符,如果该字符在哈希表中出现过,则将相同字符的个数加1,同时将哈希表中该字符的出现次数减1。最后返回相同字符的个数即可。
以下是代码实现:
```python
def count_same_chars(str_a, str_b):
char_count = {} # 哈希表,用于记录每个字符出现的次数
same_count = 0 # 相同字符的个数
# 遍历字符串A,统计每个字符出现的次数
for char in str_a:
if char in char_count:
char_count[char] += 1
else:
char_count[char] = 1
# 遍历字符串B,统计其中在字符串A中出现过的字符个数
for char in str_b:
if char in char_count and char_count[char] > 0:
same_count += 1
char_count[char] -= 1
return same_count
```
示例:
输入:str_a = "hello", str_b = "world"
输出:2
说明:字符串A和字符串B中共有两个相同的字符,即字符'l'和字符'o'。
阅读全文