当前位置:首页python > 正文

python删除排序数组中的重复项

作者:野牛程序员:2023-12-29 18:08:27python阅读 3090

删除排序数组中的重复项可以通过遍历数组并使用双指针来实现。以下是一个用Python实现的例子:

def remove_duplicates(nums):
    if not nums:
        return 0

    # 使用两个指针,一个用于遍历,另一个用于记录非重复元素的位置
    i = 0

    for j in range(1, len(nums)):
        if nums[j] != nums[i]:
            i += 1
            nums[i] = nums[j]

    return i + 1

# 示例
input_nums = [1, 1, 2, 2, 2, 3, 4, 4, 5]
new_length = remove_duplicates(input_nums)

# 打印结果
output_nums = input_nums[:new_length]
print(output_nums)

这段代码定义了一个remove_duplicates函数,该函数接受一个已排序的数组,并返回数组中非重复元素的个数。在示例中,输入数组是[1, 1, 2, 2, 2, 3, 4, 4, 5],经过处理后,非重复元素的个数为5,输出数组为[1, 2, 3, 4, 5]

野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击