输入字符串A、字符串B,求在字符串A、字符串B中相同的字符个数
时间: 2024-01-24 17:17:29 浏览: 140
可以使用哈希表来解决这个问题。
首先,我们可以遍历字符串A,将每个字符和它出现的次数存储在一个哈希表中。然后,遍历字符串B,如果当前字符在哈希表中已经存在,则将哈希表中对应的次数减1,并将相同字符的个数加1。
最后,相同字符的个数就是哈希表中所有值减去字符串A中字符出现的次数之和。
以下是示例代码:
```python
def find_common_chars(str_a, str_b):
char_count = {}
for c in str_a:
char_count[c] = char_count.get(c, 0) + 1
common_count = 0
for c in str_b:
if c in char_count and char_count[c] > 0:
char_count[c] -= 1
common_count += 1
return common_count
```
在这个代码中,我们使用了字典来实现哈希表。`char_count`字典用来存储字符串A中每个字符的出现次数,而`common_count`变量则用来统计相同字符的个数。在遍历字符串B时,如果当前字符在`char_count`中已经存在,并且对应的出现次数大于0,则将其出现次数减1,并将相同字符的个数加1。最后,返回相同字符的个数即可。
阅读全文