写出网站版面布局设计步骤,动漫网站建站目的,培训机构哪家好,国家精品资源在线开放课程题目 给你一个 升序排列 的数组 #xff0c;请你 原地 删除重复出现的元素#xff0c;使每个元素 只出现一次 #xff0c;返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 中唯一元素的个数。 考虑 的唯一元素的数量为 #xff0c;你需要做以下事情确…题目 给你一个 升序排列 的数组 请你 原地 删除重复出现的元素使每个元素 只出现一次 返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 中唯一元素的个数。 考虑 的唯一元素的数量为 你需要做以下事情确保你的题解可以被通过 更改数组 使 的前 个元素包含唯一元素并按照它们最初在 中出现的顺序排列。 的其余元素与 的大小不重要。返回 。 解题
def remove_duplicates(nums):if not nums:return 0# unique_index 初始化为 1因为第一个元素总是唯一的unique_index 1# 遍历数组从第二个元素开始for current_index in range(1, len(nums)):# 如果当前元素不等于前一个元素说明是唯一元素if nums[current_index] ! nums[current_index - 1]:nums[unique_index] nums[current_index]unique_index 1return unique_index# 示例使用
nums [1, 1, 2, 2, 3, 4, 4, 5]
k remove_duplicates(nums)
print(数组中唯一元素的个数:, k)
print(修改后的数组:, nums[:k])数组中唯一元素的个数: 5 修改后的数组: [1, 2, 3, 4, 5]