如何设计一个算法来删除python中点列表中的重复2D点

时间:2017-05-29 22:26:51

标签: python algorithm

我有一个2D点列表,如:

points_list = [[2,1],[3,1],[2,1],[2,2],[2,1],[2,2]] < / p>

我想找到重复的2D点,并且只留下列表中每个重复点的一个副本。这样得到的结果如下:

result_list = [[2,1],[3,1],[2,2]]

我知道一种解决问题的愚蠢方法,但找不到优雅的方法。希望有人可以提供一些简单的方法。谢谢!

1 个答案:

答案 0 :(得分:-1)

这是一个列举了许多可行方法的网页(我会去第四个):

https://www.peterbe.com/plog/uniqifiers-benchmark

因此,引自上面的链接:

def noDuplicates(seq):
    # order preserving 
    noDupes = [] 
    [noDupes.append(i) for i in seq if not noDupes.count(i)]
    return noDupes