l1 = [[1, 2, -1], [1, 0, 1], [2, 1, -1], [1, -1, 2]]
В моем случае [1, 2, -1]
считается равным [2, 1, -1]
и [1, -1, 2]
.По сути, порядок не имеет значения.
[1, 2, -1] = [2, 1, -1] = [1, -1, 2]
В случаях, подобных описанным выше, мне нужно оставить только 1 из этих 3 (любой из этих трех подойдет).
Таким образом, после удаления дубликатов список теперь должен иметь l1 = [[1, 2, -1], [1, 0, 1]]
или l1 = [[2, 1, -1], [1, 0, 1]]
или l1 = [[1, -1, 2], [1, 0, 1]]
Я попытался отсортировать отдельные списки (но это приводит к потере порядка вкоторые триплеты были замечены) и помещая каждый отдельный список в словарь (TypeError: unhashable type: 'list'
)
Примечание:
Когда я говорю «без учета порядка списковцелые числа ", я имею в виду, что если в моем списке 3 списка с одинаковыми целыми числами, упорядоченные по-разному?Эти 3 списка считаются одинаковыми!Вам разрешено удалить 2 из этих 3 списков, но при этом сохранить порядок удаления из списка,
Я привел пример, который показал, что для моего списка список l1 = [[1, 2, -1], [1, 0, 1], [2, 1, -1], [1, -1, 2]]
, [[-1, 1, 2], [0, 1, 1]]
неприемлем, так как[-1, 1, 2]
фактически не присутствует в исходном массиве в такой точной последовательности![-1, 1, 2] = [1, 2, -1] = [2, 1, -1] = [1, -1, 2]
ПРАВДА!ЕСЛИ Я В ЭТОМ СПИСКЕ 4 ЭЛЕМЕНТА.Но у меня нет [-1, 1, 2] в моем списке списков!
Также важно:
У меня могут быть повторяющиеся элементы в списке целых чисел.
l1 = [[1, 0, 0], [0, 1, 0], [-1, 0, 1]]
Здесь: [1, 0, 0]
= [0, 1, 0]
, при возврате моего вывода мне нужно будет удалить один из этих двух.
Я хочу подчеркнуть, что в этих отдельных списках есть 2
нулей (я думаю, это тоже важная деталь).