📌  相关文章
📜  按相对顺序打印数组中最后一次出现的元素(1)

📅  最后修改于: 2023-12-03 15:10:09.244000             🧑  作者: Mango

按相对顺序打印数组中最后一次出现的元素

在日常开发中,我们经常需要对数组进行操作。有时候我们需要找到数组中某个元素的最后一次出现位置,并按其出现的相对顺序打印出来。本文将介绍如何实现这个功能。

解决方案

我们可以先遍历数组,记录每个元素最后一次出现的位置,然后再按照数组的顺序打印出来。

下面是一个示例代码:

def print_last_occurrence(arr):
    # 创建一个字典用于记录元素最后一次出现的位置
    last_occurrence = {}
    for i in range(len(arr)):
        last_occurrence[arr[i]] = i

    # 按照原数组的顺序遍历字典,打印出最后一次出现的元素
    for i in range(len(arr)):
        if i == last_occurrence[arr[i]]:
            print(arr[i])

上述代码中,我们首先创建了一个字典 last_occurrence,用于记录每个元素最后一次出现的位置。然后我们对数组进行遍历,将每个元素最后一次出现的位置记录在字典中。接下来,我们再次遍历数组,对于每个元素,判断它是否是最后一次出现的位置,如果是,则将它打印出来。

使用示例

下面是一个使用示例,以 Python 为例:

arr = [1, 2, 3, 2, 1, 4, 5, 4]
print_last_occurrence(arr)

运行上述代码后,我们将得到以下输出结果:

3
5
总结

本文介绍了如何按相对顺序打印数组中最后一次出现的元素。我们先遍历数组,记录每个元素最后一次出现的位置,然后按照原数组的顺序遍历字典,打印出最后一次出现的元素。这种解决方案时间复杂度为 O(n),非常高效。