Python 函数:合并两个有序数组并去重排序
Python 函数:合并两个有序数组并去重排序
本文将介绍如何使用 Python 函数合并两个有序数组并去重排序。
需求:
给定两个有序的数组(正序),要求返回一个新的有序数组(正序),包含两个数组的所有元素,并过滤掉重复元素。
限制条件:
- 数字的大小在 1~10000 之间。
- 两个数组中可能存在重复的数据,需要过滤掉。
- 每个数组的大小均在有限范围内。
- 输入的两个有序数组,自身内部没有重复的内容:数字
示例:
输入:
arr1 = [1, 3, 4, 7, 8, 10]
arr2 = [2, 3, 5, 6, 7, 9]
输出:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
代码实现:
def merge(arr1, arr2):
# 合并两个数组
merged_arr = arr1 + arr2
# 将合并后的数组进行去重,排序
merged_arr = sorted(list(set(merged_arr)))
return merged_arr
arr1 = [1, 3, 4, 7, 8, 10]
arr2 = [2, 3, 5, 6, 7, 9]
res = merge(arr1, arr2)
print(res) # [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
代码解释:
merge(arr1, arr2)函数接受两个有序数组作为参数。- 使用
arr1 + arr2将两个数组合并成一个新的数组merged_arr。 - 使用
set(merged_arr)去除重复元素。 - 使用
list()将集合转换为列表。 - 使用
sorted()对列表进行排序。 - 返回排序后的去重数组
merged_arr。
总结:
本文提供了一个简洁高效的 Python 函数,用于合并两个有序数组并去重排序,满足了题目要求。该函数适用于需要对有序数组进行合并和去重操作的场景。
原文地址: https://www.cveoy.top/t/topic/nksu 著作权归作者所有。请勿转载和采集!