从数组开头删除重复项

Remove duplicates from beginning of array

类似于Removing duplicate values from a PowerShell array 我想从数组中删除元素。问题是,我积极处理数组的末尾,所以我想保留副本的最后一个实例。 | select -uniq 删除数组中它后面的重复项。

例子(取自上面link稍作修改):

$a = @(1,2,5,3,0,4,5,6,2,7,8,9,0) $a = $a | select -uniq

$a 的输出:

1,2,5,3,0,4,6,7,8,9

但我正在寻找所需的输出:

1,3,4,5,6,2,7,8,9,0

基本上我想留下一个副本的最后一个实例。

谢谢!

一种选择是反转数组,以便 select -unique 有效地反转,然后反转结果以对其进行归一化。

$a = @(1,2,5,3,0,4,5,6,2,7,8,9,0)
[array]::Reverse($a)
$a = $a | select -unique
[array]::Reverse($a)
$a -join ','
1,3,4,5,6,2,7,8,9,0