📅  最后修改于: 2023-12-03 15:36:17.080000             🧑  作者: Mango
这是一个典型的栈的应用场景,使用栈可以轻松地解决这个问题。
def find_last_remaining(arr):
stack = []
for num in arr:
if stack and stack[-1] == num:
stack.pop()
else:
stack.append(num)
return stack[-1] if stack else None
assert find_last_remaining([1, 2, 2, 3, 4, 4, 3]) == 1
assert find_last_remaining([1, 1, 2, 3, 3, 4, 4]) == 2
assert find_last_remaining([1, 1, 2, 2]) is None
assert find_last_remaining([1, 2, 3, 4]) == 1