任意输入两个字符串放入两个字符数组中,并分别排序,然后采用“逐个比较两字符串中字符大小”的方法,将他们按由小到大的顺序合并到另一数组中
时间: 2023-05-25 14:05:34 浏览: 161
。示例输入:
```
请输入第一个字符串:abcdefg
请输入第二个字符串:xyz
```
示例输出:
```
合并排序后的字符串为:abcdefgxyz
```
代码如下:
```python
# 定义函数,将两个字符串合并排序后返回拼接结果
def merge_sort(str1, str2):
# 将两个字符串转为列表
list1 = list(str1)
list2 = list(str2)
# 对列表进行排序
list1.sort()
list2.sort()
# 定义空列表,用于存储合并后的字符串
result_list = []
# 定义两个指针,用于逐个比较两个排序后的字符串中字符的大小
i, j = 0, 0
# 循环比较字符串中的每个字符,将较小的字符加入result_list中
while i < len(list1) and j < len(list2):
if list1[i] <= list2[j]:
result_list.append(list1[i])
i += 1
else:
result_list.append(list2[j])
j += 1
# 将剩余的字符加入result_list中
if i < len(list1):
result_list += list1[i:]
if j < len(list2):
result_list += list2[j:]
# 将列表转为字符串并返回
return ''.join(result_list)
# 主程序
if __name__ == '__main__':
str1 = input('请输入第一个字符串:')
str2 = input('请输入第二个字符串:')
merged_str = merge_sort(str1, str2)
print('合并排序后的字符串为:', merged_str)
```
运行截图:
![运行截图](https://cdn.luogu.com.cn/upload/image_hosting/wxe4187p.png)
阅读全文