THE_ALGORITHMS Telegram 4938
Поиск самой длинной общей подпоследовательности (Longest Common Subsequence)

Используется для нахождения наибольшей общей подпоследовательности между двумя строками или последовательностями.

Алгоритм:

1. Создание таблицы. Создаем таблицу размером (n+1) на (m+1), где n и m - длины строк или последовательностей.

2. Итеративно проходимся по каждой ячейке таблицы слева направо и сверху вниз, сравнивая символы текущей позиции.
-Если символы совпадают, увеличиваем значение ячейки на 1 и переходим диагонально влево-вверх.
-Если символы не совпадают, выбираем максимальное значение из ячейки слева и сверху и записываем его в текущую ячейку.

3. Восстановление подпоследовательности. Начинаем с нижней правой ячейки таблицы и движемся влево или вверх, выбирая ячейки с максимальным значением. Если значения ячеек совпадают, добавляем символ к подпоследовательности и двигаемся диагонально влево-вверх. Повторяем этот процесс до тех пор, пока не достигнем левой верхней ячейки таблицы.

Сложность: O(n*m)



tgoop.com/the_algorithms/4938
Create:
Last Update:

Поиск самой длинной общей подпоследовательности (Longest Common Subsequence)

Используется для нахождения наибольшей общей подпоследовательности между двумя строками или последовательностями.

Алгоритм:

1. Создание таблицы. Создаем таблицу размером (n+1) на (m+1), где n и m - длины строк или последовательностей.

2. Итеративно проходимся по каждой ячейке таблицы слева направо и сверху вниз, сравнивая символы текущей позиции.
-Если символы совпадают, увеличиваем значение ячейки на 1 и переходим диагонально влево-вверх.
-Если символы не совпадают, выбираем максимальное значение из ячейки слева и сверху и записываем его в текущую ячейку.

3. Восстановление подпоследовательности. Начинаем с нижней правой ячейки таблицы и движемся влево или вверх, выбирая ячейки с максимальным значением. Если значения ячеек совпадают, добавляем символ к подпоследовательности и двигаемся диагонально влево-вверх. Повторяем этот процесс до тех пор, пока не достигнем левой верхней ячейки таблицы.

Сложность: O(n*m)

BY Алгоритмы и структуры данных




Share with your friend now:
tgoop.com/the_algorithms/4938

View MORE
Open in Telegram


Telegram News

Date: |

Private channels are only accessible to subscribers and don’t appear in public searches. To join a private channel, you need to receive a link from the owner (administrator). A private channel is an excellent solution for companies and teams. You can also use this type of channel to write down personal notes, reflections, etc. By the way, you can make your private channel public at any moment. Telegram offers a powerful toolset that allows businesses to create and manage channels, groups, and bots to broadcast messages, engage in conversations, and offer reliable customer support via bots. 4How to customize a Telegram channel? There have been several contributions to the group with members posting voice notes of screaming, yelling, groaning, and wailing in different rhythms and pitches. Calling out the “degenerate” community or the crypto obsessives that engage in high-risk trading, Co-founder of NFT renting protocol Rentable World emiliano.eth shared this group on his Twitter. He wrote: “hey degen, are you stressed? Just let it out all out. Voice only tg channel for screaming”. “Hey degen, are you stressed? Just let it all out,” he wrote, along with a link to join the group.
from us


Telegram Алгоритмы и структуры данных
FROM American