在做社交网络分析中,遇到这样一个问题:
针对无向图,节点间存在共同的边,1,2)=(2,1)。这时我需要删除重复的一条边,如:(1,2)=(2,1)移除其中的一条。对于列表的操作这里不再累述,网上已经有很多了。这里考虑到直接使用remove方法无法删除原油列表,会导致原列表无法更新的情况。如:list1=[(1,2),(2,1),(2,3)]的列表,
for id in list1: for i in list1: if id[0] is i[1] and id[1] is i[0]: listRemove.append(i)
基于以上的情况,在这里提出了一种方法,但并非高效方法。方法为:记录重复边,限定边只能是小节点到大节点,删除大节点到小节点的边。list1把(2,1)删掉。