Longest Common Subsequence

Given two strings word1 and word2, return the length of their longest common subsequence.

A subsequence of a string is a new string generated from the original string with some characters(can be none) deleted without changing the relative order of the remaining characters. (eg, "ace" is a subsequence of "abcde" while "aec" is not). A common subsequence of two strings is a subsequence that is common to both strings.

If there is no common subsequence, return 0.

Example 1:

word1 = "abcde"
word2 = "ace"
Output: 3

The longest common subsequence is ace and its length is 3.

Example 2:

word1 = "almost"
word2 = "algomonster"
Output: 6

The longest common subsequence is almost and its length is 6.

Example 3:

word1 = "abc"
word2 = "def"
Output: 0

There is no such common subsequence, so the result is 0.

Try it yourself



Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.

Contrary to popular belief, Lorem Ipsum is not simply random text.

  >>> a = [1, 2, 3]
  >>> a[-1]

Get premium for instant access to all content and solutions