Пожалуйста, теперь, когда я переписал вопрос, и прежде чем он будет страдать от дальнейших быстрых ответов или преждевременного закрытия нетерпеливыми редакторами позвольте мне указать, что не является дубликатом этого вопроса . Я знаю, как удалить дубликаты из массива.
Этот вопрос касается удаления последовательностей из массива, а не дубликатов в строгом смысле.
Рассмотрим эту последовательность элементов в массиве;
[0] a
[1] a
[2] b
[3] c
[4] c
[5] a
[6] c
[7] d
[8] c
[9] d
В этом примере я хочу получить следующее ...
[0] a
[1] b
[2] c
[3] a
[4] c
[5] d
Обратите внимание, что повторяющиеся элементы сохраняются, но последовательности одного и того же элемента сокращены до одного экземпляра этого элемента.
Кроме того, обратите внимание, что при повторении двух строк их следует сократить до одного набора (из двух строк).
[0] c
[1] d
[2] c
[3] d
... уменьшается до ...
[0] c
[1] d
Я пишу на C #, но алгоритмы на любом языке приветствуются.