求一个字符串中最长的连续出现的字符,输出该字符及其出现次数,字符串中无空白字符(空格、回车和tab),如果这样的字符不止一个,则输出第一个。
时间: 2023-04-14 09:00:25 浏览: 107
首先,我们需要遍历整个字符串,记录当前字符连续出现的次数,以及最长连续出现的字符和次数。具体实现可以用一个循环来完成:
```
s = "aabbbbccccddddd"
max_char = s[] # 最长连续出现的字符
max_count = 1 # 最长连续出现的次数
cur_char = s[] # 当前字符
cur_count = 1 # 当前字符连续出现的次数
for i in range(1, len(s)):
if s[i] == cur_char:
cur_count += 1
else:
if cur_count > max_count:
max_char = cur_char
max_count = cur_count
cur_char = s[i]
cur_count = 1
if cur_count > max_count:
max_char = cur_char
max_count = cur_count
print("最长连续出现的字符是:", max_char)
print("出现次数是:", max_count)
```
在上面的代码中,我们用 `max_char` 和 `max_count` 分别记录最长连续出现的字符和次数,用 `cur_char` 和 `cur_count` 分别记录当前字符和连续出现的次数。在遍历字符串时,如果当前字符和上一个字符相同,则将 `cur_count` 加 1;否则,就需要更新 `max_char` 和 `max_count`,并将 `cur_char` 和 `cur_count` 重置为当前字符和 1。最后,如果整个字符串都遍历完了,但是最后一个字符仍然是连续出现的,那么也需要更新 `max_char` 和 `max_count`。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)