Как я могу объединить два списка A и B, минимизируя дубликаты, сохраняя относительный порядок каждого из списков A и B в результирующем списке? - PullRequest
0 голосов
/ 27 апреля 2019

У меня есть две последовательности строк A и B, введенные в виде списков, которые могут иметь или не иметь смежные дубликаты.

A = ['S','D','D','M','C','M']
B = ['D','D','S','C','C','M']

Я хочу объединить их при минимизации смежных дубликатов при сохранении порядка каждой последовательности A и B.

R = ['D','S','D','S','D','C','D','M','C','M','C','M']

Я хочу найти подход динамического программирования для решения этой проблемыно я не уверен, с чего начать и как это сделать на python.

1 Ответ

0 голосов
/ 27 апреля 2019

Я не уверен, как твое слияние с нами должно работать.Я пытался

[k for k, v in itertools.groupby(heapq.merge(A, B))]

Но это дает мне:

['D', 'S', 'D', 'M', 'C', 'M', 'S', 'C', 'M']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...